🖥️Devs Guild Onboarding Handbook
Welcome to the Developers Guild of 2077 Collective!
The Developers Guild is crucial in building and maintaining the technological backbone that supports the Ethereum community.
“Talk is cheap. Show me the code.”
— Linus Torvalds
This handbook will guide you through the structure, processes, and opportunities within the Developers Guild, ensuring you can contribute effectively and make a meaningful impact.
Technology Stack
Active GitHub projects utilize the following technologies:
JavaScript: Used for client-side scripting and creating interactive web pages. We follow the Airbnb JavaScript Style Guide.
Astro: A modern front-end framework for building fast and scalable websites. We adhere to the official Astro style guide.
Python: Used for server-side scripting, data analysis, and automation tasks. We follow the PEP 8 style guide and use type hints for better code readability and maintainability.
Other Stacks We Utilize For Disparate Projects
Web Development: HTML/Tailwind. Tailwind CSS is used for utility-first CSS styling, ensuring rapid and responsive design.
Full-Stack Development: JavaScript/TypeScript. TypeScript is preferred for its static type-checking capabilities, enhancing code quality and reducing runtime errors.
Backend Development: Python. We leverage frameworks like Django and Flask for robust and scalable backend solutions.
Smart-Contract Development: Solidity. We use Solidity for developing smart contracts on blockchain platforms, following best practices for security and efficiency.
By leveraging these technologies, we ensure our projects are built with modern, efficient, and maintainable codebases, tailored to meet the specific needs of each project.
Style Guidelines
To maintain consistency in our codebase, we follow these basic style guidelines.
General
Ensure code is well-commented for clarity and maintainability
Use meaningful and descriptive names for variables, functions, and classes
Write unit tests for critical functions and components
Follow the SOLID principles for object-oriented design
Review and adhere to DRY principles (Don’t Repeat Yourself)
JavaScript
Use camelCase for variable and function names (e.g.,
userName)Use PascalCase for class names (e.g.,
UserClass)Use consistent indentation (4 spaces)
Keep lines under 80 characters
Prefer
constandletovervarfor variable declarationsUse strict equality (
===) and inequality (!==) to avoid type coercion issuesFollow the Airbnb JavaScript Style Guide
Astro
Follow the official Astro style guide
Ensure all components are self-contained and reusable
Use consistent naming conventions for component files and functions
Python
Use snake_case for variable and function names (e.g.,
user_name)Use PascalCase for class names (e.g.,
UserClass)Use consistent indentation (4 spaces)
Keep lines under 79 characters
Follow the PEP 8 style guide
Ensure docstrings are provided for all public modules, classes, functions, and methods (PEP 257)
Utilize type hints to improve code readability and maintainability
HTML/CSS
Use lowercase letters and hyphens for class names (e.g.,
user-name)Use double quotes for attribute values
Keep HTML and CSS code well-formatted and readable
Follow the W3C HTML and CSS guidelines
Git
Write clear and concise commit messages
Follow the Conventional Commits convention
Regularly pull changes from the main branch to stay up-to-date
Use feature branches for new features and bug fixes
Ensure all tests pass before merging to the main branch
By adhering to these guidelines, we ensure a clean, consistent, and maintainable codebase across the 2077 Collective projects.
Git Repositories
All our projects are open-source and publicly accessible via our Github repositories under our @2077Collective organization.
List Of Repositories
To contribute to any 2077 Collective project, please follow these steps:
Fork the repository to your personal GitHub account.
Clone the forked repository to your local machine.
Create a new branch for your feature or fix (e.g., feature/new-feature or fix/bug-fix).
Commit your changes with a descriptive message.
Push your branch to your forked repository.
Open a pull request to merge your branch into the main repository.
Project-specific information
You can find specific project information under the individual project repository.
Last updated