DevTrail
A developer-focused platform for turning work into visible progress.
Context & The Problem
Developer work is spread across tools, making it difficult to maintain a coherent view of project activity and progress.
A developer-oriented workspace with connected web, backend, and mobile experiences. The feature set is being developed in phases.
My Contribution & Ownership
Defining the product experience and building across backend, web, mobile, and supporting AI services.
Architecture & System Flow
Planned multi-client system with an application backend and a separately scoped AI service.
Next.js interface for the primary developer workspace.
Express and TypeScript backend for core product workflows.
Flutter mobile client and FastAPI-powered AI capabilities as the product develops.
User-scoped slug resolution and repository linking
When an engineer creates a project in DevTrail, the project service generates a URL-safe slug, verifies it against the user's existing projects to avoid cross-tenant name collisions, and automatically appends a base36 timestamp suffix if a duplicate exists. It then establishes atomic many-to-many links to connected GitHub repositories.
1234567891011121314151617181920212223242526272829public async createProject(
userId: string,
input: CreateProjectInput,
): Promise<Project & { repositoryCount: number }> {
let slug = this.generateSlug(input.name);
const existingSlug = await this.projectRepo.findBySlug(userId, slug);
if (existingSlug) {
slug = `${slug}-${Date.now().toString(36)}`;
}
const project = await this.projectRepo.create({
userId,
name: input.name,
slug,
description: input.description,
status: input.status,
visibility: input.visibility,
color: input.color,
});
if (input.repositoryIds && input.repositoryIds.length > 0) {
await this.projectRepo.linkRepositories(project.id, input.repositoryIds);
}
return {
...project,
repositoryCount: input.repositoryIds ? input.repositoryIds.length : 0,
};
}Engineering Decisions & Trade-offs
Separate AI concerns
AI-specific workloads have different dependencies from ordinary application APIs.
Keep the main API in Express and isolate AI functionality in FastAPI.
Design for web and mobile
Developer workflows can span desktop and phone contexts.
Plan a shared backend with dedicated Next.js and Flutter interfaces.
Limitations & What I'd Improve
- In development; described capabilities are architectural and product direction, not a claim of public availability.
- No public demo or repository link is currently listed.
Apex F1
A top-down racing game where braking is the skill.