Skip to content
Abas Farah edited this page Oct 6, 2023 · 7 revisions

Welcome to the Tennis-Self-Serve wiki!

Welcome to the Raeda Wiki

Welcome to the project's GitHub Wiki! Here you'll find insights into our project structure and information on the various technologies and tools we're using.

Table of Contents


Directory Structure

Our project is structured as follows:

  • React Native using Expo: /apps/expo
  • Nextjs: /apps/nextjs

For more information on the directory structure and a short explanation on each file check this page out.


React Native using Expo

/apps/expo

Expo is a framework and platform for universal React applications. It is a set of tools and services built around React Native to help you develop, build, deploy, and quickly iterate on iOS, Android, and web apps from the same JavaScript/TypeScript codebase.

  • Advantages:
    • Rapid development with live reloading (IE: running on phone with live updates).
    • Cross-platform development under a single codebase.
    • Access to a rich ecosystem of libraries and tools optimized for Expo.

For further details about our implementation, navigate to the Expo directory.


Nextjs

/apps/nextjs

Next.js is a React framework that provides features such as server-side rendering and static site generation. It's built by Vercel and designed to optimize React apps for production.

  • Advantages:
    • Improved performance with automatic code splitting.
    • Enhanced SEO capabilities with server-side rendering.
    • Development ease with built-in CSS and webpack support.

Navigate to the Nextjs directory to dive deeper into our web application's specifics.


Clerk Authentication

Our project uses Clerk as the authentication manager for login.

Clerk is a complete user management solution for modern applications. It offers features like:

  • User Sign Up & Sign In
  • Multi-Factor Authentication
  • User Management Dashboard

The major advantage of using Clerk is its scalability and the ease it brings to managing user data and authentication flows. The integration with our application ensures a secure and efficient user experience.

For more insights into our Clerk implementation and setup, refer to our dedicated section on authentication in the project documentation.


Tailwind CSS for Styling

Tailwind CSS is a utility-first CSS framework packed with classes that help us design robust and responsive interfaces without writing custom styles. It enables rapid UI development and ensures consistency across our application.

Read more about Tailwind CSS


Thank you for navigating our wiki! Feel free to explore other sections for more in-depth information.