https://github.com/themesguide/airstack
Build your own community curated resources list using Airtable + ReactJs
https://github.com/themesguide/airstack
airtable javascript reactjs
Last synced: 9 months ago
JSON representation
Build your own community curated resources list using Airtable + ReactJs
- Host: GitHub
- URL: https://github.com/themesguide/airstack
- Owner: ThemesGuide
- Created: 2018-07-18T21:28:57.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2019-04-03T17:15:58.000Z (almost 7 years ago)
- Last Synced: 2025-05-12T19:21:58.442Z (9 months ago)
- Topics: airtable, javascript, reactjs
- Language: JavaScript
- Homepage:
- Size: 74.2 KB
- Stars: 56
- Watchers: 5
- Forks: 11
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Airstack
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.
Backend
===
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.
Frontend
===
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.
React app structure
---
```
--- /src
------- /components
------- /layouts
------- /routes
------- /views
---------- /category
---------- /dashboard
---------- /resource
------- airtable.js
------- app.js
------- conf.json
------- env.json
------- helpers.js
------- index.js
```
Getting Started
===
- At 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`
To build:
===
- Run `> npm run build`
Good to Know
===
- A Resource can be associated with multiple Categories
- Resources can have 0 or more related Tags
- Resources can have 0 or more related Resources