Zettahash DAO Website

badge

Project Goals

Welcome to the Zettahash DAO website repository! This project is the landing page for a decentralised bitcoin mining DAO project called Zettahash DAO. Our main goals are:

  • Provide information about the project.
  • Attract new investors.
  • Engage the community.
  • Direct users to important areas such as the members-only dashboard (#Hashboard), the ZHD token details, and links to inspect the token on Etherscan.

Getting Started

To get a copy of this project up and running on your local machine, follow these simple steps:

  1. Clone the repository:
    git clone git@github.com:Zettahash/zettahash-website-0.3.git
  2. Navigate to the project directory:
    cd zettahash-website-0.3
  3. Run a local webserver:
    • You can use any local webserver. For example, using Python:
      python -m http.server

Build Process

The build.js script is responsible for automating the build process of the project. It performs the following tasks:

  1. Compile and Minify CSS and JavaScript:
    • Combines and minifies CSS and JavaScript files to reduce load times and improve performance.
  2. Optimise Images:
    • Compresses image files to ensure faster loading without significant loss of quality.
  3. Generate HTML Files:
    • Processes template files to generate the final HTML files for the website.
  4. Copy Assets:
    • Copies necessary assets such as fonts and icons to the dist directory.

To run the build process, use the following command:

node build.js

File Structure

The project has the following file structure:

src Folder

The src folder contains the source files for the project. The initial source is built in English on Webflow and exported directly to the src folder:

src/
├── css/
│   ├── styles.css
│   └── ...
├── js/
│   ├── main.js
│   └── ...
├── images/
│   ├── logo.png
│   └── ...
├── templates/
│   ├── index.html
│   └── ...
└── assets/
    ├── fonts/
    └── icons/

dist Folder

The dist folder contains the output files generated by the build process:

dist/
├── css/
│   ├── styles.min.css
│   └── ...
├── js/
│   ├── main.min.js
│   └── ...
├── images/
│   ├── logo.png
│   └── ...
├── index.html
└── ...

Proposing Changes

We welcome contributions from the community! To propose changes to the project, follow these steps:

  1. Fork the repository:

    • Click on the "Fork" button at the top right corner of this page.
  2. Clone your forked repository:

    git clone https://github.com/yourusername/zettahash-website-0.3.git
    cd zettahash-website-0.3
  3. Create a new branch for your changes:

    git checkout -b your-branch-name
  4. Make your changes:

    • Edit the files as necessary using your preferred code editor.
  5. Commit your changes:

    git add .
    git commit -m "Description of the changes you made"
  6. Push to your forked repository:

    git push origin your-branch-name
  7. Create a Pull Request:

    • Go to your forked repository on GitHub.
    • Click on the "Compare & pull request" button.
    • Provide a detailed description of your changes and submit the pull request.

Contribution Guidelines

  • Follow best practices for HTML, CSS, and JavaScript.
  • Ensure that all HTML is valid and semantic.
  • Use consistent naming conventions (e.g., BEM for CSS classes).
  • Write clear and concise commit messages, following this format:
    • feat: Description of a new feature
    • fix: Description of the bug fix
    • docs: Description of documentation changes
    • style: Description of style changes (formatting, missing semi-colons, etc.)
    • refactor: Description of refactoring code
    • test: Description of adding missing tests
    • chore: Description of maintenance tasks
  • Ensure that all changes are tested and do not break existing functionality.
  • Provide detailed descriptions in pull requests, including the purpose of the changes, screenshots (if applicable), and any relevant issue numbers.

Reporting Issues

If you encounter any issues or have suggestions for improvements, please use the "Issues" tab on GitHub to report them. When reporting issues, please include:

  • Title: A clear and descriptive title for the issue.
  • Description: A detailed description of the issue, including any relevant context.
  • Steps to Reproduce: A list of steps to follow to reproduce the issue.
  • Expected Behaviour: A description of what you expected to happen.
  • Actual Behaviour: A description of what actually happened.
  • Screenshots: If applicable, add screenshots to help explain the problem.
  • Browser and Operating System: Information about the browser and operating system you were using when the issue occurred.
  • Additional Information: Any additional information that might be useful, such as log files or links to related issues.

Contact

For any inquiries or further information, feel free to contact us on Telegram.

License

This project is licensed under the Apache License 2.0. See the LICENSE file for details.


Thank you for contributing to Zettahash DAO!