Digital platform for collaborative accessibility innovation
By Hackability — Italian non-profit for inclusive design
Explore the docs »
·
Report Bug
·
Request Feature
Hackability is an Italian non-profit dedicated to co-designing innovative accessibility solutions with and for people with disabilities and the elderly. Founded in Turin in 2016, Hackability brings together designers, makers, and users to create personalized, scalable, and impactful assistive technologies using digital fabrication and open innovation.
This platform, Space Hackability, is the digital hub for documenting, sharing, and collaborating on Hackability's projects, methods, and community-driven solutions.
- Co-design: Users are active partners in the design process.
- Social Impact: Solutions that improve autonomy and inclusion.
- Scalability: Designs that can be reproduced and adapted.
- Digital Fabrication: Leveraging 3D printing and maker spaces.
- Community Building: Fostering local and global networks for accessibility.
Hackability Thinking systematically involves people with and without disabilities in the creation of custom solutions, empowering communities and democratizing technology.
- Project Documentation: Rich, structured project pages using Editor.js
- Role-Based Access: Public, Author, and Admin roles
- Media Management: Cloudinary for images, Google Cloud for files
- Open Knowledge: Projects and methods are open source/Creative Commons
- Community Collaboration: Tools for designers, makers, and users to connect
- Next.js 13 (Hybrid App + Pages Router)
- tRPC for type-safe API
- Prisma (PostgreSQL)
- NextAuth.js (Google OAuth)
- Tailwind CSS + DaisyUI
- Editor.js for rich content
- Cloudinary & Google Cloud Storage for media
- TypeScript (strict, end-to-end types)
- Hybrid Routing: Admin dashboard (App Router), public pages (Pages Router)
- Role-Based Security:
isAdmin,isAuthorflags - Rich Content: Editor.js JSON for project bodies
- Strict Environment Validation: Zod schemas
- Public: View published projects
- Author: Create/edit own projects
- Admin: Full access, user/project management
npm install
npm run dev- Visit localhost:3000
- Use
.env.exampleas a template for environment variables
npm run dev— Start development servernpm run build— Production buildnpm run lint— Lint codenpx prisma studio— DB browsernpx prisma db seed— Seed database
/src/app/dashboard/— Admin dashboard (App Router)/src/pages/— Public pages (Pages Router)/src/projects/— Project components/forms/src/ui/— Reusable UI components/src/server/— API, DB, auth, storage logic
We welcome contributions from everyone interested in accessibility, inclusive design, and open source! Whether you want to help with code, documentation, design, or community building, your input is valued.
- Fork this repository and clone it locally.
- Create a new branch for your feature or fix:
git checkout -b my-feature
- Make your changes, following our coding standards.
- Test your changes locally.
- Commit with clear, descriptive messages.
- Push to your fork and open a Pull Request (PR) on GitHub.
- Use TypeScript and follow existing code style.
- Run
npm run lintand fix any lint errors before submitting. - Write clear, concise commit messages (e.g.,
fix: correct image upload bug). - Add or update documentation and tests as needed.
- Ensure your PR describes the problem and solution clearly.
- Reference related issues if applicable (e.g.,
Closes #42). - Be open to feedback and ready to make changes.
- Use GitHub Issues to report bugs or suggest features.
- Please provide as much detail as possible (steps to reproduce, screenshots, etc.).
- Be respectful and collaborative—everyone is welcome.
- Follow our Code of Conduct (if available).
- Non-code contributions (design, documentation, accessibility feedback, etc.) are highly appreciated!
- For questions, open a discussion or an issue.
- You can also reach out via Hackability's website or community channels.
Thank you for helping us make technology more accessible for everyone! 🚀
- Vercel: See Vercel deployment guide
- Docker: See Docker deployment guide