Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added client/public/ERD.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
25 changes: 15 additions & 10 deletions milestones/milestone2.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,24 +6,29 @@ This document should be completed and submitted during **Unit 6** of this course

This unit, be sure to complete all tasks listed below. To complete a task, place an `x` between the brackets.

- [ ] In `planning/wireframes.md`: add wireframes for at least three pages in your web app.
- [ ] Include a list of pages in your app
- [ ] In `planning/entity_relationship_diagram.md`: add the entity relationship diagram you developed for your database.
- [ ] Your entity relationship diagram should include the tables in your database.
- [ ] Prepare your three-minute pitch presentation, to be presented during Unit 7 (the next unit).
- [ ] You do **not** need to submit any materials in advance of your pitch.
- [ ] In this document, complete all three questions in the **Reflection** section below
- [x] In `planning/wireframes.md`: add wireframes for at least three pages in your web app.
- [x] Include a list of pages in your app
- [x] In `planning/entity_relationship_diagram.md`: add the entity relationship diagram you developed for your database.
- [x] Your entity relationship diagram should include the tables in your database.
- [x] Prepare your three-minute pitch presentation, to be presented during Unit 7 (the next unit).
- [x] You do **not** need to submit any materials in advance of your pitch.
- [x] In this document, complete all three questions in the **Reflection** section below

## Reflection

### 1. What went well during this unit?

[👉🏾👉🏾👉🏾 your answer here]
- Strong and consistent communication across Slack and Discord, with quick responses and active engagement from everyone
- Productive collaboration during live screen sharing sessions that allowed for real time feedback and problem solving
- Clear organization through GitHub Issues, which helped each member understand their tasks while staying aware of the overall project direction
- Easy scheduling thanks to a shared When2Meet that made coordinating weekly meetings simple
- A positive team culture built on supportive attitudes, willingness to listen, and reliable teamwork


### 2. What were some challenges your group faced in this unit?

[👉🏾👉🏾👉🏾 your answer here]
- Narrowing the platform’s many possibilities into a clear, shared MVP vision that aligned everyone on the core user experience.

### 3. What additional support will you need in upcoming units as you continue to work on your final project?

[👉🏾👉🏾👉🏾 your answer here]
- Constructive feedback from peers after our pitch, and continued guidance from our Tech Fellow as development progresses.
43 changes: 32 additions & 11 deletions planning/entity_relationship_diagram.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,38 @@
# Entity Relationship Diagram
# Codefolio Entity Relationship Diagram (ERD)

Reference the Creating an Entity Relationship Diagram final project guide in the course portal for more information about how to complete this deliverable.
This ERD outlines the core structure of Codefolio’s backend, including user accounts, profiles, content, relationships, and tagging. It is organized into three sections: Entity Tables, Join Tables, and Utility Tables.

## Create the List of Tables

[👉🏾👉🏾👉🏾 List each table in your diagram]

## Add the Entity Relationship Diagram
## List of Tables

[👉🏾👉🏾👉🏾 Include an image or images of the diagram below. You may also wish to use the following markdown syntax to outline each table, as per your preference.]
🧱 **Entity Tables** - *Core Resources*
These tables represent the primary data models for users, content, and interactions across the platform.

| Column Name | Type | Description |
|-------------|------|-------------|
| id | integer | primary key |
| name | text | name of the shoe model |
| ... | ... | ... |
- **Users** - Handles authentication via GitHub OAuth and stores core account credentials and metadata.
- **Hashtags** - Stores reusable tags for skills, technologies, and post topics.
- **Profiles** - Public-facing profile information linked to each authenticated user.
- **Posts** - User-generated posts in the social feed, including media, descriptions, and links.
- **Projects** - Markdown-based showcases of a user’s projects, tech stack, and demos.
- **Network** - Tracks relationship requests between users (e.g., follow, connect).
- **Messages** - Records private messages exchanged between profiles, including sender, receiver, content, and read status.
- **Comments** - Stores comments made by users on posts.


🔗 **Join Tables** - *Many-to-Many Relationships*
These tables manage relational mappings between core entities, enabling flexible tagging and discovery features.

- **profile_hashtags** - Connects profiles to hashtags to display skills and tech stack.
- **post_hashtags** - Connects posts to hashtags for topical discovery in the feed.


🛠️ **Utility Table** - *Supporting Feature*
This table supports additional platform functionality that enhances user experience.

- **Bookmarks** - Stores a user’s saved posts or portfolio items. Includes constraints ensuring each bookmark references exactly one item and prevents duplicates.



## Entity Relationship Diagram

![Preview](../client/public/ERD.png)
10 changes: 5 additions & 5 deletions server/config/database.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ import pg from 'pg';

const config = {
connectionString: process.env.DATABASE_URL,
ssl: {
rejectUnauthorized: false
}
}
ssl: false //{
// rejectUnauthorized: false
// }
};

export const pool = new pg.Pool(config)
export const pool = new pg.Pool(config);
Loading