Skip to content

ThreeT is a comprehensive web application designed to streamline and enhance work management and collaboration for individuals, teams, managers, and clients. The app provides users with the ability to submit daily work status updates, track their work progress, and access various additional functionalities based on roles.

License

Notifications You must be signed in to change notification settings

raulshma/threeT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ThreeT

ThreeT is a web application designed to streamline work management and collaboration within organizations. It provides features for users to submit daily work status updates, track their work progress, and collaborate with teams. This README will guide you through the setup process for both the backend and frontend of the ThreeT project.

Stack

The ThreeT project utilizes the following technologies:

Backend

.NET

  • .NET 7 - Backend framework
  • Next.js 13 - Frontend framework
  • Next Auth - Authentication library for Next.js
  • Postgres - Database
  • Clean Architecture with Controller Service and Service Repository pattern - Backend structure
  • Mapperly - Mapping library for entity-to-DTO and vice versa
  • Entity Framework Core - Database ORM
  • OpenID Dict - Using ASP.NET Identity Core for user authentications
  • Identity - ASP.NET Core authentication

Frontend

Vercel

Repository Structure

The ThreeT repository is structured as follows:

  • backend: Contains the .NET projects for the API and authentication.
  • frontend: Contains the Next.js frontend project.

Prerequisites

Before setting up the ThreeT project, ensure you have the following installed:

Backend Setup

  1. Clone the repository: git clone https://github.com/raulshma/threeT.git
  2. Open your preferred editor or IDE and navigate to the backend directory.
  3. You will find multiple projects in the solution. Two important projects are ThreeTee.API and ThreeTee.Authentication. The API project contains all the APIs used by the frontend, and the Authentication project handles the OpenID Dict server and user authentication.
  4. Before running the projects, you need to add the connection string to the user-secrets manager of both the API and Authentication projects. The property names can be found in the appsettings.json file of each project. Add the connection string for either the local database or the dev database.
  5. Set the ThreeTee.Authentication project as the startup project
  6. Open the terminal and navigate to the ThreeTee.Infrastructure.Persistence.Npgsql project. Run the migration command to update the database schema:
    • If using the package manager console: update-database
    • If using the .NET CLI: dotnet ef database update
  7. Run it using dotnet run. The backend should now be up and running.

Frontend Setup

  1. Inside the frontend directory, open the terminal and execute npm install to install the required dependencies.
  2. Open the project in your preferred editor or IDE.
  3. Create a new file in the root directory named .env.local and copy the contents from .env.example. Make any necessary changes to the configuration in the .env.local file, such as the authentication server URL and resource server URL.
  4. Run the project using the npm run dev command.

You should now be able to access the ThreeT application at http://localhost:3000. 6. Upon accessing the application, you will land on the login page. Use the Single Sign-On (SSO) button to log in with the authentication server.

Congratulations! You have successfully set up the ThreeT project. Feel free to explore its features and functionalities to streamline your work management and collaboration within your organization.

Additional Resources

About

ThreeT is a comprehensive web application designed to streamline and enhance work management and collaboration for individuals, teams, managers, and clients. The app provides users with the ability to submit daily work status updates, track their work progress, and access various additional functionalities based on roles.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages