{"id":15093293,"url":"https://github.com/juliegibbs/angular-full-stack","last_synced_at":"2026-01-04T02:52:48.192Z","repository":{"id":237274460,"uuid":"775045143","full_name":"JulieGibbs/Angular-Full-Stack","owner":"JulieGibbs","description":"Angular Full Stack project built using Angular, Express, Mongoose and Node. Whole stack in TypeScript.","archived":false,"fork":false,"pushed_at":"2024-03-20T16:58:07.000Z","size":10995,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-25T11:41:42.973Z","etag":null,"topics":["angular","angular-cli","bootstrap","docker","express","jwt","mongodb","node","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JulieGibbs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["DavideViolante"],"custom":["https://www.paypal.me/dviolante"]}},"created_at":"2024-03-20T16:55:47.000Z","updated_at":"2024-03-29T17:35:40.000Z","dependencies_parsed_at":"2024-04-30T17:32:44.007Z","dependency_job_id":null,"html_url":"https://github.com/JulieGibbs/Angular-Full-Stack","commit_stats":null,"previous_names":["juliegibbs/angular-full-stack"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JulieGibbs%2FAngular-Full-Stack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JulieGibbs%2FAngular-Full-Stack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JulieGibbs%2FAngular-Full-Stack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JulieGibbs%2FAngular-Full-Stack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JulieGibbs","download_url":"https://codeload.github.com/JulieGibbs/Angular-Full-Stack/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244601246,"owners_count":20479432,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["angular","angular-cli","bootstrap","docker","express","jwt","mongodb","node","typescript"],"created_at":"2024-09-25T11:20:49.614Z","updated_at":"2026-01-04T02:52:48.136Z","avatar_url":"https://github.com/JulieGibbs.png","language":"TypeScript","readme":"# Angular Full Stack \n[![](https://github.com/davideviolante/Angular-Full-Stack/workflows/Build/badge.svg)](https://github.com/DavideViolante/Angular-Full-Stack/actions?query=workflow%3ABuild) [![](https://github.com/davideviolante/Angular-Full-Stack/workflows/Tests/badge.svg)](https://github.com/DavideViolante/Angular-Full-Stack/actions?query=workflow%3ATests) [![Donate](https://img.shields.io/badge/paypal-donate-179BD7.svg)](https://www.paypal.me/dviolante)\n\n\nAngular Full Stack is a project to easly get started with the latest Angular using a real backend and database. Whole stack is in TypeScript, from frontend to backend, giving you the advantage to code in one single language throughout the all stack.\n\nThis project uses the [MEAN stack](https://en.wikipedia.org/wiki/MEAN_(software_bundle)):\n* [**M**ongoose.js](http://www.mongoosejs.com) ([MongoDB](https://www.mongodb.com)): database\n* [**E**xpress.js](http://expressjs.com): backend framework\n* [**A**ngular 2+](https://angular.io): frontend framework\n* [**N**ode.js](https://nodejs.org): runtime environment\n\nOther tools and technologies used:\n* [Angular CLI](https://cli.angular.io): frontend scaffolding\n* [Bootstrap](http://www.getbootstrap.com): layout and styles\n* [Font Awesome](http://fontawesome.com): icons\n* [JSON Web Token](https://jwt.io): user authentication\n* [Angular 2 JWT](https://github.com/auth0/angular2-jwt): JWT helper for Angular 2+\n* [Bcrypt.js](https://github.com/dcodeIO/bcrypt.js): password encryption\n\n## Prerequisites\n1. Install [Node.js](https://nodejs.org) and [MongoDB](https://www.mongodb.com)\n2. Install Angular CLI: `npm i -g @angular/cli`\n3. From project root folder install all the dependencies: `npm i`\n\n## Run\n### Development mode with files watching\n`npm run dev`: [concurrently](https://github.com/kimmobrunfeldt/concurrently) execute MongoDB, Angular build, TypeScript compiler and Express server.\n\nA window will automatically open at [localhost:4200](http://localhost:4200). Angular and Express files are being watched. Any change automatically creates a new bundle, restart Express server and reload your browser.\n\n### Production mode\n`npm run prod`: run the project with a production bundle listening at [localhost:3000](http://localhost:3000) \n\n### Manual mode\n1. Build frontend: `npm run builddev` for dev or `npm run build` for prod\n2. Build backend: `npm run predev`\n3. Run MongoDB: `mongod`\n4. Run the app: `npm start`\n\n### Docker\n1. `sudo docker-compose up`\n2. Go to [localhost:3000](http://localhost:3000)\n\n### AWS EC2\n1. Create a EC2 Linux machine on AWS\n2. Edit the EC2 Security Group and add TCP port `3000` as an Inbound rule for Source `0.0.0.0/0`\n3. Clone this repo into the EC2 machine\n4. If you use a remote MongoDB instance, edit `.env` file\n5. Run `npm ci`\n6. Run `npm run build`\n7. Run `npm start`\n8. The app is now running and listening on port 3000\n9. You can now visit the public IP of your AWS EC2 followed by the port, eg: `12.34.56.78:3000`\n10. Tip: use [pm2](https://pm2.keymetrics.io/) to run the app instead of `npm start`, eg: `pm2 start dist/server/app.js`\n\n## Preview\n![Preview](https://raw.githubusercontent.com/DavideViolante/Angular2-Full-Stack/master/demo.gif \"Preview\")\n\n## Please open an issue if\n* you have any suggestion to improve this project\n* you noticed any problem or error\n\n## Running tests\nRun `ng test` to execute the frontend unit tests via [Karma](https://karma-runner.github.io).\n\nRun `npm run testbe` to execute the backend tests via [Jest](https://jestjs.io/) (it requires `mongod` already running).\n\n## Running linters\nRun `npm run lint` to execute [Angular ESLint](https://github.com/angular-eslint/angular-eslint), [HTML linting](https://github.com/htmlhint/HTMLHint) and [SASS linting](https://github.com/sasstools/sass-lint).\n\n## Wiki\nTo get more help about this project, [visit the official wiki](https://github.com/DavideViolante/Angular-Full-Stack/wiki).\n\n## Further help\nTo get more help on the `angular-cli` use `ng --help` or go check out the [Angular-CLI README](https://github.com/angular/angular-cli/blob/master/README.md).\n\n### Author\n* [Davide Violante](https://github.com/DavideViolante)\n\n","funding_links":["https://github.com/sponsors/DavideViolante","https://www.paypal.me/dviolante"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuliegibbs%2Fangular-full-stack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuliegibbs%2Fangular-full-stack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuliegibbs%2Fangular-full-stack/lists"}