- Built with
- Configuring Cloudinary
- Configuring environment variables
- Installation and bootstrapping
- Running tests
- Demo
- Bugs or Feature Requests
- License
- Cloudinary
- Express
- Formik
- Highcharts
- Jest
- MongoDB
- Nodemailer
- Passport
- React
- React Redux
- Semantic UI React
- Tiny Cloud
- Webpack
This application requires Cloudinary, which is a Software-as-a-Service (SaaS) solution for managing media assets in the cloud. Just signup for a free account. After signing up you will find your configuration parameters in cloudinary management console.
This application requires Tiny Cloud for managing richtext contents. To register for a Tiny Cloud API key, visit the Tiny Account sign-up page. To retrieve the API key for an existing Tiny Account, login and visit the Tiny Account Dashboard.
Rename .env.example file to .env and adjust your environment variables. Details for each environment variables are given below:
Name | Mandatory | Description |
---|---|---|
PORT | Yes | On which port the web server will be listen to. |
MONGODB_URI | Yes | MongoDB connection string URI. For more details visit here. |
TOKEN_SECRET | Yes | A secret string to generate an access token. Learn more from here. |
REFRESH_SECRET | Yes | A secret string to generate a refresh token. Learn more from here. |
GOOGLE_CLIENT_ID and GOOGLE_CLIENT_SECRET | No | Your OAuth 2.0 client credentials from google. Learn more from here. |
FACEBOOK_CLIENT_ID and FACEBOOK_CLIENT_SECRET | No | Your OAuth 2.0 client credentials from facebook. Learn more from here. |
CLOUDINARY_CLOUD_NAME, CLOUDINARY_API_KEY, and CLOUDINARY_API_SECRET | Yes | After signing up for a free account in Cloudinary, go to your dashboard to obtain the required credentials to access their api. Learn more from here. |
TINYCLOUD_API_KEY | Yes | Your TinyMCE API Key. For more details visit here. |
SMTP_HOST, MAILER_ADDRESS, and MAILER_PASSWORD | Yes | Your mail server's smtp address and your email credentials. Learn more from here. If you want to use gmail to send emails you have to allow non secure apps to access gmail. You can do this by going to your gmail settings here. |
SENTRY_DSN | No | Data Source Name(DSN) value for enabling Sentry. |
You need to have Node.js and Yarn installed on your machine before running the followings:
$ yarn install # install dependencies
$ yarn start # development build
$ yarn production # production build
$ yarn test # run unit tests
$ yarn coverage # generate coverage report
Here is a working live demo : https://gadget-catalog.onrender.com/
If you find a bug, kindly open an issue here by including your step by step to reproduce the issue.
If you'd like to request a new feature, feel free to do so by opening an issue here.
The MIT License. Copyright © 2023 Shibbir Ahmed.