A modern, professional screenplay writing application for macOS with real-time Fountain format parsing, blockchain IP protection, and advanced collaboration features.
Type is a next-generation screenplay editor built with SwiftUI, featuring a modular coordinator architecture, Apple-native design philosophy, and powerful tools for professional screenwriters. From solo writers to production teams, Type provides everything needed to craft, protect, and collaborate on screenplays.
- Real-time Fountain parsing with syntax highlighting and live preview
- Split-view interface with editor and formatted preview side-by-side
- Professional formatting with proper typography, spacing, and A4 paper styling
- Advanced editor features: auto-completion, smart formatting, find/replace, spell checking
- Multiple cursors for efficient batch editing
- Code folding for scene and section organization
- Minimap view for document overview and quick navigation
- Undo/redo with comprehensive history management
- Premium design with vibrant gradients and glassmorphism effects
- Smooth animations and micro-interactions for enhanced UX
- Dark mode support with beautiful color schemes
- Native macOS styling following Apple's design guidelines
- Customizable workspace with resizable panels and layouts
- Distraction-free writing mode for focused creativity
- One-click IP protection for your screenplays on blockchain
- Network selection: Switch between Mainnet and Testnet
- Protection tracking: View all protected assets with IP IDs and timestamps
- Blockchain verification: Links to blockchain explorer for authenticity
- See
STORY_PROTOCOL_README.mdfor details
- Comprehensive character database with profiles, photos, and descriptions
- Character arc tracking throughout your story
- Relationship mapping between characters
- Dialogue analysis and character statistics
- Character search and filtering capabilities
- Hierarchical outline mode for document organization
- Scene database with metadata tracking
- Visual timeline for story structure
- Drag-and-drop reordering for scenes and sections
- Scene statistics and analysis tools
- OAuth integration with Google and Apple Sign In
- Secure authentication with JWT token management
- User profiles with email and profile management
- Cloud sync (in development) for cross-device access
- Secure keychain storage for credentials and tokens
- Real-time collaboration with user management
- Comments & replies with resolution tracking
- Version control with ability to create, restore, and compare versions
- Sharing & invites with role-based permissions
- Activity tracking for team awareness
- Multi-window & tab support - Open multiple documents simultaneously in separate windows or tabs
- Smart tab management - New documents open as tabs when a window exists, or create new windows
- Native macOS file operations with proper permissions
- Auto-save every 30 seconds with recovery
- Recent files quick access
- Export options: PDF, Final Draft (.fdx), plain text (.fountain)
- Template system for TV pilots, features, and shorts
- Comprehensive keyboard shortcuts (Cmd+S, Cmd+O, Cmd+N, Cmd+T for tabs, Cmd+F, etc.)
- Tab navigation - Cmd+T for new tab, Cmd+Shift+N for new window, Cmd+W to close tab
- Customizable animations with speed controls
- Writing goals with daily word count targets and progress tracking
- Statistics dashboard with word count, page count, and analytics
- Full-screen mode for distraction-free writing
Comprehensive documentation is available in the docs/ directory:
docs/COMPREHENSIVE_DOCUMENTATION.mdβ Complete project overview and architecturedocs/MODULAR_ARCHITECTURE.mdβ Architecture design and patternsdocs/MODULAR_IMPLEMENTATION_SUMMARY.mdβ Implementation detailsdocs/ADVANCED_EDITOR_FEATURES_SUMMARY.mdβ Editor feature documentationdocs/CHARACTER_DATABASE_README.mdβ Character system guidedocs/MULTI_WINDOW_SUPPORT.mdβ Multi-window functionality guidedocs/TAB_SUPPORT_IMPLEMENTATION_SUMMARY.mdβ Tab support implementation detailsdocs/STORY_PROTOCOL_INTEGRATION.mdβ Blockchain integration detailsdocs/BEAT_ANALYSIS_AND_IMPROVEMENTS.mdβ Competitive analysis and roadmapdocs/BUILD_SCRIPTS_README.mdβ Build scripts and development workflowdocs/IMPROVEMENT_TODO.mdβ Development roadmapSTORY_PROTOCOL_README.mdβ Quick start guide for IP protection
Type is built with a modern, modular architecture featuring a sleek TypeStyle interface and coordinator pattern that ensures scalability, maintainability, and clean separation of concerns:
TypeStyleAppView (Modern UI Container)
β
AppCoordinator (Central State Manager)
β
βββββββββββββ¬βββββββββββββββ¬ββββββββββββββββ¬βββββββββββββββ
β Editor β Characters β Outline β Collaboration β
βCoordinatorβ Coordinator β Coordinator β Coordinator β
βββββββββββββ΄βββββββββββββββ΄ββββββββββββββββ΄βββββββββββββββ
Key principles:
- Single Responsibility: Each module handles one domain
- Dependency Injection: Services are injected into coordinators
- Reactive Programming: Combine framework for state management
- Apple Guidelines: Native macOS styling and behavior
See docs/MODULAR_ARCHITECTURE.md for detailed architecture documentation.
- Launch Type - Welcome screen appears on first launch
- Sign in (optional) - Use Google or Apple Sign In for cloud sync and collaboration
- Create a new document - Press Cmd+N or Cmd+T for a new tab
- Choose a template (Feature Film, TV Pilot, or Short) or start blank
- Write in Fountain format - see syntax guide below
- Watch live preview update in real-time as you type
- Use tabs - Press Cmd+T to open multiple documents in tabs, or Cmd+Shift+N for a new window
- Save your work (Cmd+S) - auto-save runs every 30 seconds
- Export to PDF or Final Draft format when ready
- Select Network in the toolbar (Testnet for testing, Mainnet for production)
- Click "Connect" and wait for green connection indicator
- Click "Protect" button (shield icon)
- Enter screenplay details (title and author)
- Confirm protection - your screenplay is now registered on blockchain!
See STORY_PROTOCOL_README.md for detailed IP protection guide.
Type supports comprehensive keyboard shortcuts for efficient workflow:
- Cmd+N / Cmd+T - New document (opens as tab if window exists)
- Cmd+Shift+N - New window
- Cmd+O - Open document
- Cmd+S - Save
- Cmd+Shift+S - Save As
- Cmd+W - Close tab/window
- Cmd+F - Find & Replace
- Cmd+Shift+F - Toggle Focus Mode
- Cmd+Z - Undo
- Cmd+Shift+Z - Redo
- Cmd+Control+S - Toggle Sidebar
- Cmd+Shift+P - Toggle Preview
- Cmd+Shift+O - Toggle Outline
- Cmd+Shift+D - Toggle Dark Mode
- Cmd+Shift+T - Show Templates
Title: My First Screenplay
Author: Your Name
Draft: First Draft
:
# ACT ONE
= This is the beginning of our story
INT. COFFEE SHOP - DAY
Sarah sits at a corner table, typing furiously on her laptop.
SARAH
(without looking up)
I can't believe I'm finally writing this screenplay.
MIKE
(approaching)
Hey, Sarah! How's the writing going?
SARAH
(looking up, surprised)
Mike! I didn't expect to see you here.
> THE END <
Type supports the complete Fountain screenplay format:
| Element | Syntax | Example |
|---|---|---|
| Scene Heading | INT./EXT. LOCATION - TIME |
INT. COFFEE SHOP - DAY |
| Character | ALL CAPS NAME |
SARAH |
| Dialogue | Text after character name | Hello, world! |
| Parenthetical | (direction) |
(without looking up) |
| Action | Regular text | Sarah sits at a table. |
| Transition | TRANSITION: or > TRANSITION TO: |
CUT TO: |
| Section | # Section Name |
# ACT ONE |
| Synopsis | = synopsis |
= This is the beginning |
| Note | [[note]] |
[[private note]] |
| Centered | > text < |
> THE END < |
| Page Break | === |
=== |
| Emphasis | *italic* **bold** ***bold-italic*** |
*sigh* |
| Forced Elements | ! for scene, @ for character |
!SCENE HEADING |
| Dual Dialogue | Character name with ^ |
SARAH^ |
- Force scene heading:
!INT. LOCATION - DAY - Force character:
@CHARACTER - Lyrics:
~This is a song~ - Title page: Key-value pairs at document start (Title:, Author:, etc.)
- SwiftUI - Modern macOS interface framework
- Combine - Reactive state management
- Fountain Format - Industry-standard screenplay markup
- Story Protocol - Blockchain IP protection (simulated, Web3 integration pending)
- OAuth 2.0 - Google and Apple Sign In authentication
- Keychain Services - Secure credential storage
- β Core Editor: Real-time parsing, syntax highlighting, live preview
- β Advanced Editor: Auto-completion, multiple cursors, code folding, find/replace
- β Modern TypeStyle UI: Premium design with gradients, glassmorphism, smooth animations
- β File Management: Save/load, auto-save, export (PDF/FDX), templates
- β Multi-Window & Tabs: Native macOS tab support with smart window management
- β Character System: Database, profiles, arcs, relationships, dialogue analysis
- β Outline & Scenes: Hierarchical organization, scene tracking, timeline view
- β Authentication: OAuth integration with Google and Apple Sign In
- β Collaboration: Real-time editing, comments, version control, sharing
- β Story Protocol: Blockchain IP protection UI and flow (simulated)
- β Productivity: Writing goals, statistics, keyboard shortcuts
- β Welcome Screen: Beautiful onboarding experience for new users
- β Build System: Automated build and installation scripts with testing
- Enhanced FDX export with advanced features
- iCloud sync for cross-device access
- Performance optimization for large documents
- Revision marking system
- Advanced statistics and analytics
- OAuth backend integration (token exchange)
See docs/IMPROVEMENT_TODO.md for the complete development roadmap including:
- Phase 1: Core competitiveness (Enhanced parser, professional export, advanced outlining)
- Phase 2: Professional features (Revision management, advanced statistics, plugin system)
- Phase 3: Advanced features (Focus mode, production features, advanced collaboration)
- Phase 4: Platform expansion (iOS app, web version, cross-platform support)
- macOS 12.0 or later
- Xcode 14.0 or later
- Swift 5.7 or later
# Clone the repository
git clone https://github.com/yourusername/type.git
cd type
# Open in Xcode
open type.xcodeproj
# Build and run (Cmd+R)# Basic build and install
./build_and_install.sh
# Build, install, and launch the app
./build_and_install.sh -l
# Clean build (removes previous builds)
./build_and_install.sh -c
# Clean build and launch
./build_and_install.sh -c -l
# Show app information
./build_and_install.sh -iThe build script automatically:
- Verifies Xcode installation and project structure
- Builds the app in Release configuration
- Installs to
/Applications/type.app - Verifies successful installation
- Optionally launches the app after installation
See docs/BUILD_SCRIPTS_README.md for detailed build script documentation.
# Create a distributable DMG installer
./create_dmg.sh
# Create DMG with clean build
./create_dmg.sh -c
# Create DMG and keep build artifacts
./create_dmg.sh -kThe DMG installer allows users to easily download and install Type by dragging it to their Applications folder. The script automatically:
- Builds the app in Release configuration
- Creates a professional DMG with custom layout
- Includes an Applications folder symlink for easy installation
- Compresses the DMG for optimal file size
See docs/BUILD_INSTALL.md for detailed build instructions.
Run the included test scripts to verify functionality:
# Test main application (installation, bundle, launch)
./test_app.sh
# Test character system
./test_character_database.sh
# Test architecture
./test_modular_architecture.sh
# Test outline features
./test_outline_mode.shThe test_app.sh script verifies:
- β
App installation location (
/Applications/type.app) - β Executable permissions and bundle structure
- β App information (Bundle ID, Version)
- β Launch capability
For comprehensive testing, run:
./build_and_install.sh -l && ./test_app.shContributions are welcome! This project follows:
- Swift style guidelines and best practices
- Coordinator pattern for feature modules
- Apple design guidelines for UI/UX
- Comprehensive documentation for all changes
- Make your changes to the code
- Build and test:
./build_and_install.sh -l - Verify with test script:
./test_app.sh - For major changes, use clean build:
./build_and_install.sh -c -l
See docs/COMPREHENSIVE_DOCUMENTATION.md for architecture details and docs/BUILD_SCRIPTS_README.md for development workflow.
MIT License - feel free to use and modify as needed.
- Fountain Format - The wonderful open screenplay markup language
- Story Protocol - Blockchain IP protection infrastructure
- Apple Design - Inspiration for the beautiful native macOS interface
Happy screenwriting! π¬β¨
- Documentation: See
/docsdirectory for comprehensive guides - Story Protocol: https://docs.story.foundation
- Fountain Format: https://fountain.io
- Issues: Report bugs or request features via GitHub Issues
- macOS: 12.0 (Monterey) or later
- Xcode: 14.0 or later (for development)
- Swift: 5.7 or later
- Memory: 4GB RAM minimum (8GB recommended)
- Storage: 100MB for app installation
- Local-first: Documents are stored locally by default
- Secure authentication: OAuth 2.0 with secure token storage
- Keychain integration: Credentials stored securely in macOS Keychain
- No telemetry: Your writing stays private
- Optional cloud sync: Enable only when needed
Built with β€οΈ for screenwriters by screenwriters.
