Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/migmm/migmm.github.io
My personal website using React, NodeJS, AWS, MongoDB, and PostgreSQL.
https://github.com/migmm/migmm.github.io
aws express mongodb mongoose nodejs postgresql reactjs typescript
Last synced: 1 day ago
JSON representation
My personal website using React, NodeJS, AWS, MongoDB, and PostgreSQL.
- Host: GitHub
- URL: https://github.com/migmm/migmm.github.io
- Owner: migmm
- Created: 2022-07-17T18:08:39.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-31T19:51:26.000Z (6 months ago)
- Last Synced: 2024-06-01T20:22:36.286Z (6 months ago)
- Topics: aws, express, mongodb, mongoose, nodejs, postgresql, reactjs, typescript
- Language: TypeScript
- Homepage: http://www.miguedev.com
- Size: 6.11 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# MIGUEDEV
## React, Node,JS, Express, MongoDB, PostgreSQL, AWS, Typescript.
### Personal web project using React, Node,JS, Express, MongoDB, PostgreSQL, AWS.
## Technologies Used
In the frontend, React was employed alongside Styled Components using TypeScript.
In the backend, NodeJS was utilized with Express, Mongoose, Pg, and both MongoDB and PostgreSQL, everything with Typescript.
## Features
- Possibility to monitoring project deploys in order to know when a project is down.
- The ability to choose, through the .env file, the database to store information is provided MongoDB or PostgreSQL and also can be modified to work with other databases.
- Users can also choose where to store objects, with options including disk, AWS, or database.
- You can edit project description like a "Word document" with images.
- You can use your README.md un project description clicking in checkbox "use README".
## Testing
Testing is included in both the frontend and the backend, each with its respective command:
npm run test
Jest was used for the frontend, and Mocha with Chai for the backend.
The NYC library is also included for test coverage, displaying everything automatically after the test is conducted.
## .env Files
There is a .env file for each stage:
.env.development for running it in local development mode
.env.production for production
.env.test for running testsEach .env file can be configured with the necessary parameters for each stage, allowing more flexibility when performing different actions.
## Security
Regarding security, roles and session cookies with a configurable expiration time are implemented.
## Running the Project
Firstly, install the dependencies for both the frontend and the backend:
npm install
Then, to run the project locally, execute the following commands:
In the Frontendnpm run start
In the Backend
npm run dev
## Deploy
For deployment, the project is configured to build in Full stack.
Create a folder, in the same location as the frontend and backend, named dist. Inside that folder, create another one called public. Then, first, execute the backend build with:
npm run build
Afterwards, run the frontend build with:
npm run build
The order is set up to ensure that backend files are saved in the dist folder and frontend files are stored in the public folder.