Build your own community curated resources list (Startup Stash, TemplateStash, WDStack, etc..) using Airtable and ReactJs.
Airstack is a free, open-source project that enables that creation of curated collections and niche topic directories. Create your own categorized list of Web resources. The whole premise of Airstack is that the app is easily managed, without coding, via the Airtable UI.
https://airtable.com/ https://reactjs.org/ https://getbootstrap.com/
The backend and data store is an Airtable "speadsheet" database, which is also used to configure and administer the Web app. The Airtable database contains 3 core tables:
-
Resource Represents a single item that is designated by a URL.
-
Name (title/label)
-
Category (1 or more)
-
URL
-
Short
-
Full
-
Featured
-
Approved
-
SubmittedBy
-
ImgThumb
-
ImgLarge
-
FaviconUrl
-
Tags
-
Related
-
IsFree
-
Rating
-
DateCreated
-
Category (topics) Represents a topic/subject/bucket by which any Resource can be associated.
-
Name
-
Resources (1 or more)
-
Description
-
ImgThumb
-
ImgLarge
-
App Contains app-wide configaration options and global content.
The frontend is currently built with ReactJs and Bootstrap 4. The React app contains the business logic, and performs API calls to the Airtable database.
--- /src
------- /components
------- /layouts
------- /routes
------- /views
---------- /category
---------- /dashboard
---------- /resource
------- airtable.js
------- app.js
------- conf.json
------- env.json
------- helpers.js
------- index.js
- At https://airtable.com create account, and then "Copy Base": https://airtable.com/universe/exppC2xVnGVRRoC5i/airstack
- Generate an API key: https://airtable.com/account
In dev environment:
- Run
> npm install --save-dev
- Edit the
env.json
, and enter your Airtable API settings - Run
> npm start
- Run
> npm run build
- A Resource can be associated with multiple Categories
- Resources can have 0 or more related Tags
- Resources can have 0 or more related Resources