Skip to content

Commit

Permalink
Update readme and add screenshots to readme
Browse files Browse the repository at this point in the history
  • Loading branch information
Draikth committed Jul 29, 2024
1 parent aa36c4a commit f20fedd
Show file tree
Hide file tree
Showing 6 changed files with 35 additions and 101 deletions.
136 changes: 35 additions & 101 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,79 +1,42 @@
# Next.js Event Network Project

## Description

The main idea is that this is a site you go to for seeing what kind of various events are happening around the city, is there a concert? a large festival, a small festival, a renaissance fair, that one performance of McBeth happening in the local graveyard? you should be able to go to this site and find out without having to hope you see the poster on some random lamppost or stumble upon something that looks interesting and you maybe would've liked to attend, already happening when you are out and about.

The site is supposed to act as a collective reference point for all these various events happening in and around the city, a marketing point even, though the site itself is not intended to be a point of sale for tickets... at least not within the scope of the project (If i have time, then maybe I can look at making it something like that in the future...)

## Functionalities

- A landing page
- User Registration, Login, Logout and User Delete
- User profile page with links to individual posted events
- All Upcoming Events page
- Single event Page
- Posting of New Event

## Technologies

- Next.js
- TypeScript
- SASS CSS
- PostgreSQL
- Jest
- Playwright

## Database Setup

If you don't have PostgreSQL installed yet, follow the instructions from the PostgreSQL step in [UpLeveled's System Setup Instructions](https://github.com/upleveled/system-setup/blob/master/readme.md).

Copy the `.env.example` file to a new file called `.env` (ignored from Git) and fill in the necessary information.

Then, connect to the built-in `postgres` database as administrator in order to create the database:

**Windows**

If it asks for a password, use `postgres`.

```bash
psql -U postgres
```

**macOS**

```bash
psql postgres
```

**Linux**

```bash
sudo -u postgres psql
```

Once you have connected, run the following to create the database:

```sql
CREATE DATABASE <database name>;
CREATE USER <user name> WITH ENCRYPTED PASSWORD '<user password>';
GRANT ALL PRIVILEGES ON DATABASE <database name> TO <user name>;
\connect <database name>
CREATE SCHEMA <schema name> AUTHORIZATION <user name>;
```

Quit `psql` using the following command:

```bash
\q
```

On Linux, you will also need to create a Linux system user with a name matching the user name you used in the database. It will prompt you to create a password for the user - choose the same password as for the database above.

```bash
sudo adduser <user name>
```

Once you're ready to use the new user, reconnect using the following command.

**Windows and macOS:**

```bash
psql -U <user name> <database name>
```

**Linux:**

```bash
sudo -u <user name> psql -U <user name> <database name>
```
- Jest unit tests
- Playwright end to end testing
- DrawSQL https://drawsql.app/teams/final-project-21/diagrams/after-review-database-for-upleveled-fin-project

## Setup Instructions

- Clone the repository with `git clone <repo>`
- Setup the database by downloading and installing PostgreSQL
- Create a user and a database
- Create a new file `.env`
- Copy the environment variables from `.env-example` into `.env`
- Replace the placeholders xxxxx with your username, password and name of database
- Install dotenv-safe with `pnpm add dotenv-safe`
- Run `pnpm install` in your command line
- Run the migrations with `pnpm migrate up`
- Start the server by running `pnpm dev`

## Run Tests

Expand All @@ -94,39 +57,10 @@ pnpm playwright test
- Fly.io
- Docker

<!-- This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/create-next-app).
## Getting Started
First, run the development server:
```bash
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
```
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.
## Learn More
To learn more about Next.js, take a look at the following resources:
- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!
## Deploy on Vercel
The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
## Screenshots

Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details. -->
![landing page](./public/screenshots/landingPage.webp)
![events page](./public/screenshots/eventsPage.webp)
![individual event page](./public/screenshots/ind-ev-pg.webp)
![profile page](./public/screenshots/profilePage.webp)
![post event form](./public/screenshots/postEvent.webp)
Binary file added public/screenshots/eventsPage.webp
Binary file not shown.
Binary file added public/screenshots/ind-ev-pg.webp
Binary file not shown.
Binary file added public/screenshots/landingPage.webp
Binary file not shown.
Binary file added public/screenshots/postEvent.webp
Binary file not shown.
Binary file added public/screenshots/profilePage.webp
Binary file not shown.

0 comments on commit f20fedd

Please sign in to comment.