A human-readable language for defining and documenting file structures with rich metadata, designed for clarity and maintainability.
1root:
2 - Type: Directory
3 - Path: ./src
4 <description>
5 Source code directory for the application.
6 </description>
7
8 - Type: Directory
9 - Name: components/
10 <description>
11 React components used throughout the app.
12 </description>
13
14 - Type: File
15 - Name: Button.tsx
16 <description>
17 Reusable button component with variants.
18 </description>
19
20 - Type: Directory
21 - Name: utils/
22 <description>
23 Utility functions and helpers.
24 </description>
25
26 - Type: File
27 - Name: formatters.ts
28 <description>
29 Data formatting utilities.
30 </description>
ForSure is a declarative language designed to define, document, and generate file structures for software projects. It provides a human-readable way to specify directories, files, and their relationships, along with rich metadata.
Use indentation to represent nesting in your file structure
Add metadata tags to document your files and directories
Import common structures with @import directives
Use comments with # to add notes to your ForSure files
Create templates for reusable project structures
Edit the ForSure code below to see how the language works. The visualization will update in real-time to show the resulting file structure.
Define nested directories and files with a clear, indentation-based syntax that mirrors the actual file system structure.
Add descriptions, purposes, authors, and other metadata to document your file structure and make it self-explanatory.
Reuse common file structures across projects with import directives, making your definitions modular and maintainable.
Use variables in your ForSure files to create dynamic templates that can be customized at generation time.
Define file content templates with placeholders that can be filled in during generation.
Use conditional logic to include or exclude files and directories based on variables.