Welcome to SkillSprint, your one-stop shop for all looking for science courses. This repository contains the use of various modern technologies in the creation of a simple website.
SkillSprint is an online platform that can be used for enrolling in various courses. Feel free to explore the functionality it possesses.
- Course Listing: Utilizes the
CourseListcomponent to display available courses. - Filter and Search: Incorporates
FilterBarandSearchBarcomponents for refining course searches based on categories and titles. - Dynamic Course Retrieval: Retrieves course data from the SkillsPrint API (
BASE_URL) usingfetchrequests. - Sorting and Filtering: Allows users to sort courses alphabetically and filter based on selected categories.
- Course Display: Renders course details including title, category, description, start/end dates, and an image.
These instructions will help you get a copy of our project up and running on your local machine for development and testing purposes. Please take a look at the Setup section for notes on how to deploy the project on a live system.
After unbundling the project:
- Git clone the project.
git clone https://github.com/jmbeba/SkillSprint
- Run
pnpm installin your terminal. If you don't have the pnpm package manager installed in your environment, click here to go to the pnpm official installation guide. Alternatively, you can use npm to install it .
npm install -g pnpm- Edit
/utils/index.jsto setup your database. - In a new terminal, run
pnpm run dev. This will run your Vite app.
-
Vite: Vite is a build tool that provides a faster and more efficient development environment for modern web projects, utilizing native ES modules to optimize build times. -
ShadcnUI: ShadcnUI is a UI framework that offers a collection of customizable and sleek UI components, simplifying the creation of user interfaces with its extensive component library. -
Lucide-react: Lucide-react provides a set of customizable and scalable icons as React components, offering a wide range of icons to enhance visual elements within the application. -
Date-fns: date-fns is a popular JavaScript date utility library used for manipulating, formatting, and working with dates and times in a more developer-friendly manner. -
Zod: Zod is a TypeScript-first schema declaration and validation library used for defining data schemas and performing runtime data validation, ensuring type safety and data integrity in applications. -
@mantine/hooksfor pagination : @mantine/hooks is a library that offers a variety of React hooks, including hooks specifically designed for pagination, simplifying the implementation of pagination functionality in applications by providing pre-built hooks for managing paginated data.
Once the project set up locally, you can use it for various purposes, such as development, testing, or exploration. Detailed usage instructions can be found in the project documentation and code comments. Feel free to explore the codebase and experiment with the features.
John Johnson Mbeba ("https://github.com/jmbeba")
We welcome contributions from the open-source community to enhance and improve SkillSprint. If you're interested in contributing, please follow our Contributing Guidelines and adhere to our Code of Conduct. Your contributions can help make the SkillSprint experience even more exceptional.
SkillSprint is an open-source project licensed under the MIT License. This means that you can use, modify, and distribute the project while providing appropriate attribution and adhering to the license terms outlined in the LICENSE file.