mirego/elixir-boilerplate
Elixir BSD-3-Clause⚗ The stable base upon which we build our Elixir projects at Mirego.
AI Analysis
A production-ready Elixir boilerplate project maintained by Mirego that provides a stable foundation for building web applications using Phoenix, GraphQL with Absinthe, and Ecto. It includes batteries such as testing infrastructure, security scanning, linting, and internationalization support, benefiting Elixir developers seeking a well-structured starting point.
Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.
AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.
Mirego's opinionated Elixir/Phoenix starter template with batteries for GraphQL, testing, and security
Elixir Boilerplate is a developer-maintained project template (not a framework or library) created and used by Mirego, a Canadian web development agency. It bundles Phoenix, Ecto, Absinthe GraphQL, testing infrastructure, security scanning, and deployment configuration into a ready-to-fork starting point. It serves teams building GraphQL-first Elixir web applications who want a vetted, opinionated foundation rather than assembling integrations from scratch. Real-world adoption is limited to organizations using Mirego's template or similar internal practices; it functions as a reference architecture and learning resource for the broader Elixir community.
Created in March 2019 by Mirego as an open-source crystallization of their internal project standards. The project reflects Mirego's accumulated experience shipping Elixir applications. Rather than evolving into a large framework, it has remained a stable, incrementally updated reference template maintained alongside Mirego's other open-source work.
The project gained modest but steady adoption (1,166 stars, 83 forks by June 2026) primarily among Elixir developers seeking a well-structured starting point. Growth appears to have plateaued — zero stars gained in the last 7 days, and last push was April 2026. The project's audience is self-selecting: teams already committed to Elixir/Phoenix/GraphQL stack who value Mirego's architectural opinions. It does not compete for adoption across multiple frameworks, which naturally limits scale.
Adoption not verified. No documented case studies, user testimonials, or published accounts of organizations deploying projects derived from this boilerplate. Mirego itself likely uses this as a starting point for client work, but this is not publicly confirmed. The 1,166 stars and 83 forks suggest usage within the Elixir community, but real-world deployment scale is unknown. README links to Mirego's blog post explaining the boilerplate's rationale, but the post content is not available here to verify adoption claims.
Based on README, the template bundles: Phoenix for web serving, Ecto for database abstraction, Absinthe for GraphQL APIs with Dataloader and error handling, ExUnit + ExMachina for testing, Credo for linting, MixAudit + Sobelow for security scanning, Sentry for error reporting, and Docker/OTP release for deployment. Appears to follow a standard Rails-like MVC-to-GraphQL progression. README does not detail internal code organization, module boundaries, or architectural trade-offs — only enumerates included libraries.
README states ExUnit tests and ExMachina factories are included. ExCoveralls is listed for coverage reporting. README mentions CI badge but does not publish coverage percentages or document test organization patterns. README does not discuss testing philosophy or coverage targets.
Last push April 8, 2026 (approximately 2.5 months before analysis date). CI/CD workflow badge is present. No evidence of recent bug fixes, feature additions, or issue resolution in the README or metadata. Slow but present maintenance; not abandoned, but not actively evolving. Project appears to have reached a stable plateau.
ADOPT IF: Your team is building a GraphQL-first Elixir web application, values opinionated structure and security-by-default practices, and wants to reduce setup friction by forking a vetted template from an experienced agency. You accept that you will inherit Mirego's architectural opinions (Absinthe for GraphQL, ExMachina for factories, Sentry for error reporting) and are comfortable with the included dependency set. AVOID IF: You need an actively evolving, feature-rich framework with rapid releases, community-driven extensibility, or multi-paradigm support beyond GraphQL. You require deep customization of the underlying architecture or dislike inherited opinions. You are evaluating tools based purely on community momentum and mainstream adoption. MONITOR IF: You are learning Elixir and want to understand professional project organization. Use it as a reference, not necessarily as a fork; the template is more valuable for its teaching intent than for its reusability across diverse projects.
Independent dimensions
Mainstream potential
3/10
Technical importance
5/10
Adoption evidence
2/10
- Maintenance is slow; April 2026 was the last update. If critical security issues emerge in included dependencies, resolution time is unknown. Projects forked from this template inherit stability at fork time but will not automatically receive updates.
- No formal versioning or release process is evident. When you fork, you lock in a specific Elixir/OTP/Phoenix combination; updating is manual, requiring you to merge upstream or apply updates yourself.
- Adoption is not documented. No public registry of projects using this template exists, making it difficult to assess community experience or identify pain points in the template's design.
- GraphQL-first bias: Teams building REST APIs, command-line tools, or real-time systems (e.g., Channels-heavy) may find the template's focus on Absinthe + GraphQL misaligned with their needs.
- Dependency lock-in: By accepting pre-selected libraries (Bamboo for email, Oban for jobs, Tesla for HTTP), you commit to that ecosystem's direction. If a preferred library diverges from your needs later, you have inherited a fork that requires manual update work.
This project will likely remain a stable, slowly-maintained reference template for Mirego's own use and as a learning resource for the Elixir community. It will not evolve into a major framework or ecosystem hub. Adoption will remain concentrated among teams explicitly seeking Mirego's opinionated structure; mainstream Elixir developers will continue to use Phoenix directly or build their own integration patterns. The project's value is permanent but niche — it serves as a documented exemplar of professional Elixir project organization, not as a widely-adopted standard.
Newsletter
Get analyses like this every Monday
Free weekly digest of the most interesting open-source discoveries.
Languages
Information
- Website
- https://open.mirego.com
- Language
- Elixir
- License
- BSD-3-Clause
- Last updated
- 3mo ago
- Created
- 89mo ago
- Analyzed with
- anthropic/claude-haiku-4-5
Stars over time
Contributors over time
Top 100 contributors only — repos with more will plateau at 100.
Open issues
No open issues — clean slate.
Similar repos
absinthe-graphql/absinthe
Absinthe is a complete GraphQL implementation for Elixir that provides an...
mirego/accent
Accent is a developer-oriented translation management platform that streamlines...
beam-community/ex_machina
ExMachina is a factory library for Elixir that simplifies test data creation...
| Repository | Stars | Week Δ | Language | Score | Updated |
|---|---|---|---|---|---|
|
|
1.2k | — | Elixir | 8/10 | 3mo ago |
|
|
4.4k | — | Elixir | 9/10 | 3w ago |
|
|
1.5k | — | Elixir | 8/10 | 1mo ago |
|
|
6.5k | — | Elixir | 9/10 | 6d ago |
|
|
2.1k | — | Elixir | 8/10 | 3w ago |
|
|
23.1k | — | Elixir | 9/10 | 1d ago |
Phoenix is the core dependency and architectural foundation. This boilerplate adds opinionated integrations (Absinthe, testing, security scanning, deployment) on top. Phoenix users who want bare framework control avoid this; teams wanting faster onboarding use this.
Absinthe is included as a component. This boilerplate pre-configures Absinthe with related libraries (Dataloader, error handling); a team could use Absinthe alone and build their own integration layer.
Phoenix's own project generator covers scaffolding. This boilerplate goes further by including GraphQL, security scanning, and release configuration. Phoenix generator is first-party; this is third-party and more opinionated.
Many organizations maintain private boilerplate templates similar to this. This project's value is that it is public, maintained by a respected agency, and forks to a new repo rather than requiring template provisioning infrastructure.
Similar concept: opinionated, batteries-included starter templates from agencies. Rails ecosystem has several; Elixir ecosystem has fewer public-facing examples. This fills a similar role for Elixir.