https://github.com/candacej97/ena_portal
Web app boilerplate for keeping track of all events and announcements for an organization and displaying them to public users, and allowing admin users to accept requests to host and/or promote events.
https://github.com/candacej97/ena_portal
boilerplate expressjs handlebarsjs mongoose
Last synced: 2 months ago
JSON representation
Web app boilerplate for keeping track of all events and announcements for an organization and displaying them to public users, and allowing admin users to accept requests to host and/or promote events.
- Host: GitHub
- URL: https://github.com/candacej97/ena_portal
- Owner: candacej97
- License: mit
- Created: 2019-01-22T16:30:32.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2022-12-09T11:18:50.000Z (over 3 years ago)
- Last Synced: 2025-12-26T21:53:03.357Z (6 months ago)
- Topics: boilerplate, expressjs, handlebarsjs, mongoose
- Language: JavaScript
- Homepage:
- Size: 834 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Events and Announcements (ENA) Portal
A web app boilerplate for keeping track of all events and announcements for an organization and displaying them to public users, and allowing admin users to accept requests to host and/or promote events.
## Overview
Running and organization is one thing, getting an organization to be organized is a job in itself. The ENA Portal is a web app for keeping track of all events and announcements for an organization, displaying them, accepting requests to host and/or promote events.
Users are able to view announcements (general or event-based) without logging in. However, if they wish to submit/edit an event (editing of events they submitted), they must sign up/log in. Each event will include statuses of whether they have been approved by the admin office as a viable date to hold the event, or included in the promotional queue.
## Features
* use a config file for db security
## Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
### Prerequisites
* Node
* NPM
* MongoDB
### Installing
```
git clone https://github.com/candacej97/ena_portal.git
cd ena_portal
npm install
npm start
```
## Testing
go to your browser and go to `localhost:3000`
## Built With
* NodeJS
* express
* express-session
* mongoose
* mongoose-url-slugs
* hbs
* path
* bcryptjs
* MongoDB
## Wireframes






## Site Map

## User Stories or Use Cases
1. as non-registered user, I can register a new account with the site
2. as non-registered user, I can view all the announcements that have been approved by an admin
3. as a user, I can log in to the site
4. as a user, I can submit a new announcement form
5. as a user, I can view all of the announcement forms I've submitted
6. as a user, I can edit my submitted announcement forms
7. as an admin user, I can approve, deny or postpone/delay submitted announcement forms for live view
## License
This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details
## Acknowledgements
* [ExpressJS-Session](https://github.com/expressjs/session) - [my code (line 7-12)](src/app.js#L7)