StoryForge is a web application designed to create a platform for writers to connect and collaborate in small groups known as "writer's circles." The primary goal of these circles is to facilitate the sharing and beta reading of works among writers within a supportive and engaging community. The circles are created by users and moderated by designated individuals.
This project should be able to run in your favorite IDE. We used VS Code while building it.
Before you get started, make sure you have the following software installed on your computer:
- Fork the repository.
- Copy the SSH key from your forked repository.
- In your terminal, execute
git clone {paste SSH link}
. - Navigate to the repository's folder using the terminal.
- Open the folder in VS Code (or your preferred editor).
- Run
npm install
in the terminal of VS Code to install all dependencies. - Create a
.env
file at the root of the project and add the required environment variables. - In Postico, create a database named
story_forge_circles
. If you prefer a different name, update theserver/modules/pool.js
file with the new database name. - The
database.sql
file provides the necessary queries to create all required tables, along with a dummy data table for testing purposes. When deploying the application to production, make sure to exclude the dummy data fromdb_insert.sql
anddb_select.sql
. - In your VS Code terminal, execute
npm run server
. - Open a second terminal and run
npm run client
.
After completing the installation and starting the application, it should automatically open in your default browser. If it does not, navigate to http://localhost:3000/#/ to access the application.
For a detailed walkthrough of the application, please watch the following video by clicking here!
To deploy updates or make changes to the application, follow these steps:
- Obtain the Heroku login credentials from the hand-off document.
- Log in to Heroku and navigate to the story-forge section (or the relevant section for this app).
- To deploy changes manually, go to the "Deploy" tab and click "Deploy Branch." You can also configure automatic deployment from the same page.
- Environment variables are stored in the "Settings" tab on Heroku. Click "Reveal Config Vars" to view or modify them.
- For database setup, we used Postico. To connect, use the information from Heroku:
- Go to the "Resources" tab and click the Postgres add-on.
- Navigate to the "Settings" tab and click "View Credentials."
- Enter the required information in Postico as a new favorite.