Skip to content

Commit

Permalink
Update organization.txt
Browse files Browse the repository at this point in the history
  • Loading branch information
riptl authored and ripatel-fd committed Jan 8, 2024
1 parent 243e2be commit 18aa7e9
Show file tree
Hide file tree
Showing 3 changed files with 53 additions and 31 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ target/
*.lcov
*.profraw

# Clang
.clangd

# Rust
**/Cargo.lock

Expand Down
14 changes: 3 additions & 11 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,17 +12,9 @@ behaviors of various common development environments like emacs.

### Organization

- Please avoid cluttering the repository root
- `.github`: CI- and repo-related config
- `config`: GNU Make build system config
- `contrib`: Miscellaneous code
- `ffi/rust`: Rust FFI bindings
- `src`: Main source tree
- `app`: Main programs
- `ballet`: Protocol-related code (parsers, serializers, cryptography)
- `disco`: Tiles
- `tango`: Concurrency-related code (message queues, I/O)
- `util`: Firedancer standard library
See [organization.txt](./doc/organization.txt).

Please avoid cluttering the repository root.

### File Extensions

Expand Down
67 changes: 47 additions & 20 deletions doc/organization.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,12 @@ Firedancer source tree

firedancer/
├── .github/ GitHub CI configuration
├── build/ Build artifacts
│ └── linux/gcc/x86_64 Build profile
│ ├── bin/ Main programs and scripts
│ ├── cov/ Coverage report
│ ├── include/ Exported include headers
│ ├─ lib/ Static libraries
│ ├── obj/ Object files of individual compile units
Expand All @@ -13,29 +16,53 @@ Firedancer source tree
├── config/ GNU Make configuration
├── contrib/ Miscellaneous developer tooling
│ ├── codegen/ Scripts used to generate code
│ ├── docker/ Reference container configuration
│ ├── test/ Scripts used to run tests
│ └── tool/ Config files for developer tools
├── opt/
│ ├── git/ Third-party dependency repos
│ ├── include/ Third-party dependency headers
│ └── lib/ Third-party dependency libraries
└── src/ The main Firedancer source tree
├── app/ Main binaries
├── ballet/ Standalone implementations of various standards
│ needed for interoperability with the Solana ecosystem
│ (hash functions, cryptographic algorithms)
├── disco/ Tiles running on the tango messaging layer
├── flamenco/ Major Solana runtime and consensus components
│ (bank, leader schedule, virtual machine, ...)
├── funk/ Database optimized for storing Solana ledger and
│ accounts
├── tango/ IPC messaging layer and networking
└── util/ C language environment, system runtime, common data
structures and various utilities (math, bits, rng ...)
├── src/ The main Firedancer source tree
│ │
│ ├── app/ Main binaries
│ │
│ ├── ballet/ Standalone implementations of various standards
│ │ needed for interoperability with the Solana ecosystem
│ │ (hash functions, cryptographic algorithms)
│ │
│ ├── disco/ Tiles running on the tango messaging layer
│ │
│ ├── flamenco/ Major Solana runtime and consensus components
│ │ (bank, leader schedule, virtual machine, ...)
│ │
│ ├── funk/ Database optimized for storing Solana ledger and
│ │ accounts
│ │
│ ├── tango/ IPC messaging layer and networking
│ │
│ └── util/ C language environment, system runtime, common data
│ structures and various utilities (math, bits, rng ...)
└── verification/ CBMC-based code verification system

Important files

README.md

# Prepare external dependencies
deps.sh

# Test launchers
contrib/test/run_unit_tests.sh
contrib/test/run_script_tests.sh
contrib/test/run_integration_tests.sh

# All-in-one test launcher
contrib/test/ci_tests.sh

# Licensing information for imported third-party code
NOTICE

0 comments on commit 18aa7e9

Please sign in to comment.