The goal of this project is to create a web application Node.js, Express.js, node-postgres package, EJS and Bootstrap for styling. The application will allow users to create and view Daily journaling pages. Posts will persist between sessions as a postgreSQL database will be used in this version of the application.
-
Page Create/Update: Users should be able to edit current daily journaling page.
-
Page Viewing: The history page should allow the user to view all their journaling pages.
-
Styling: The application should be well-styled and responsive, ensuring a good user experience on both desktop and mobile devices.
-
Node.js & Express.js: The application will be a web server built using Node.js and Express.js. Express.js will handle routing and middleware.
-
EJS: EJS will be used as the templating engine to generate dynamic HTML based on the application's state.
Planning
- Gather content and design ideas, create wireframes with Balsamiq wireframes. Plan out how the application will work, which routes might be necessary and which pages need to be made.
Setup
-
Set up the project repository, initialize the Node.js application, and install necessary dependencies (Express.js, EJS).
-
Create the application structure, including routes, views, and static files.
-
Set up the Express.js server and define the necessary routes.
Implementing Features
-
Implement the page create/edit feature. This includes creating the form on the daily journaling page and handling the form submission in the server.
-
Implement the pages viewing feature. This includes displaying all the pages on the history page.
-
Implement the delete feature. This allows the user to click a button and remove the page from the history page.
-
Test the application to ensure that post creation and viewing are working correctly.
Styling and Polishing
-
Style the application. This includes creating a CSS file, linking it to your EJS templates, and writing CSS or using Bootstrap/Flexbox/Grid to style the application.
-
Test the application on different devices and browsers to ensure the styling works correctly.
-
Fix any bugs or issues that came up during testing.
These are the following paths and wireframes.
Contains 2 buttons: "Write daily page" and "See your history"
It is made up by the current day on the top-right and a text box where to write.
Preview all journaling pages with pagination.
It opens when a search is made.
Somthing about the usefulness of this website.
-
Export/Import Articles
-
User Login
-
Syncronization
-
Implementation of Kubernets