A small test application allowing the user to create multi path stories utilizing MongoDB for storage and Express for application management. This app doesn't use any front-end JavaScript and handles all the action inside of the NodeJS server.
Applications stack:
- NodeJS 10+
- ExpressJS
- MongoDB
- Docker
Can be found here => https://projects.oczkow.ski/multi-path-story-maker
- MongoDB running instance, locally or remotely (Installation instructions found here)
- MongoDB Client (Compass) for creating the empty tables (Installation and usage found here
- Node 10 or above
- At least one network adapter and connect Mongo to the application
- Clone the repository or unzip the compressed file.
- In Terminal or Console, navigate to the root directory of this project
- Execute
npm install
and wait for all the packages to install. - Change the base path of the application under
/views/partials/header
as this is the only place it's required. Other paths are relative. Default/multi-path-story-maker
- Depending on your MongoDB installation you will either use a local IP address or a remote server address, to set up either go to mongo.js and change the details as required.
- Create the following Database structure in mongo Database: | MultiPathStoryMaker --- stories --- users
- Make sure your machine's port 3000 isn't occupied and run
npm start
, if for any reason that port is used please change it in app.js - To view and interact with the application, visit http://localhost:3000, change the port if other was specified.
- Clone the repository or unzip the compressed file.
- Install Docker and docker-compose for chosen platform.
- In the terminal, navigate to the root location of the project.
- To build the image, execute
docker-compose build --no-cache
and wait for the image to build - Once tthe image is built, to run for development, execute
docker-compose up
and to run in de-attached mode executedocker-compose up -d
.
- For easier development and running the application install
nodemon
. - For security between the server and MongoDB, you can setup database credentials in the
mongo.js
file.