Welcome to Knots, a sleek, modern web application designed to help you master the art of knot-tying. Whether you're a seasoned pro or a curious beginner, Knots offers a comprehensive resource for exploring, learning, and discovering the perfect knot for any situation.
- Interactive Knot Library: Browse a rich collection of knots, beautifully displayed and categorized for easy navigation.
- Detailed Instructions: Each knot includes clear, step-by-step instructions with high-quality illustrations.
- Advanced Filtering and Search: Quickly find the knot you need with powerful filtering and search capabilities.
- AI-Powered Knot Assistant: Ask natural language questions and get expert recommendations for the best knot for your specific needs.
- Direct Linking: Share links to specific knots for easy reference.
To get the Knots application up and running on your local machine, follow these simple steps.
-
Clone the repository:
git clone https://github.com/your-username/knots.git cd knots -
Install dependencies for both the frontend and backend:
# Install frontend dependencies cd frontend npm install # Install backend dependencies cd ../backend npm install
-
Set up your environment variables: The backend requires an API key from an AI provider (e.g., Google Gemini) to power the AI Knot Assistant.
- Navigate to the
backenddirectory:cd backend - Create a new file named
.env:touch .env
- Open the
.envfile and add your API key:GEMINI_API_KEY=your-api-key-here
- Navigate to the
To run the application, you'll need to start both the frontend and backend servers.
-
Start the backend server:
# From the /backend directory node index.js -
Start the frontend server:
# From the /frontend directory npm run dev
The frontend will be available at http://localhost:5173/.
We welcome contributions from the community! If you'd like to help improve Knots, please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Make your changes and commit them with clear, descriptive messages.
- Push your changes to your fork.
- Submit a pull request to the
mainbranch of the original repository.
This project is licensed under the MIT License. See the LICENSE file for details.
