This is the curriculum website from Communication Multimedia Design reinvented. The old website, (cmd-amsterdam.nl/curriculum) is difficult to maintain. With this CMS the curriculum can be maintained easily, everywhere! There is an special url for exposing the curriculum website on the touch table. This website is touch table friendly!
This app is a NodeJS driven CMS where all interested users can see the whole curriculum for a study. In the back-end users can add new years, make custom labels, and make years that will automatically will be rendered to the front-view of the application. All the inserted data will be converted to a fully responsive curriculum. The curriculum is designed for all devices. The font-view is touch friendly, fast, responsive and works on every device.
- Fully configurable cms
- Custom slideshow (comes back after x minutes)
- Custom headers
- Custom types
- Custom backgrounds
- Two different curriculum views
- Filter in course interests
- Flexible curriculum structure
- Optional modals
- Optional WYSIWYG content
- Smart permission system
- Dynamic menu’s
- Email forget password
- Critical CSS
- Gzipped CSS
- Optimized images
- Zero issues W3C HTML validator
- Set the curriculum content to bottom of the page (slider view)
- Link not clickable (slider view)
- Inverse list control buttons
DB scheme
The category and post table will not be used in V1
- dynamic labels
- dynamic years
- dynamic curriculum divided for each year
- responsive
- add featured images
- user management
- forget password
- hashed passwords
- responsive
- optimized for modern browsers
- touch friendly
- 100% works on touchtable
- autosave on changes
- draggable curriculum elements
- wysiwyg editor with images upload
- slideshow
- user permissions
- custom profile management
- disable/enable years
- 100% functionallity in every browser
- slider whitch switch on after x time
- fallbacks (no js)
- build in documentation
- api
- (ctrl + z && cmd + z) step back
- auto image optimization
- spelling control
- duplicate curriculum elements
- https live site
- google analytics integration
- QR code redirect helper
- highlight labels
- extra information pages
- contact forms
- game elements
- guest user management
- misplace html element when step back +4 times (only styling issue)
PORT=port
MYSQL_HOST=localhost
MYSQL_USER=username
MYSQL_PASSWORD=password
MYSQL_DATABASE=databasename
MYSQL_PORT=port
MAIL_HOST=mail.com
MAIL_PORT=port
MAIL_SSL=Boolean
MAIL_USER=username@email.com
MAIL_PASSWORD=passpord
SESSION_SECRET=supersecret
SESSION_KEY=supersecret
SESSION_SAVEUNINITIALIZED=Boolean
SESSION_RESAVE=Boolean
No data, sessions or cookies
- User register
- Trough email
- Trough signup from login page
- User sets profile
- User sets curriculum
- Admin invite
- Create
- Extend
- Remove
- Admin users
- Create
- Delete
- Edit
- Set permissions
- Setup Ubuntu 14 server with NODEJS
- Setup MYSQL
- Setup Ubuntu 14 server with NGINX
- Create html and css
- Create Database scheme
- Create user management system
- Create mail functions
- Create curriculum edit page
- Create curriculum front-end view
- clone repo
$ git clone THIS_REPO
- cd to cloned repo
$ cd TO_CLONED_REPO
- set envoirement variables
nano .env
- run
$ npm install
- run
$ nodemon app.js
PM2 is the way to deploy this app to a online production server