Commit Graph

144 Commits

Author SHA1 Message Date
81377d1fb6 doc: Add helpful setup instructions for quick start for new devs. 2025-08-13 09:05:04 -06:00
Matthew Raymer
d086ab2f46 Merge branch 'master' into build-improvement 2025-08-11 06:42:22 +00:00
ff61a0bdf3 chore: Bump to v 1.0.6 build 39 2025-08-10 18:37:45 -06:00
Matthew Raymer
3c37ead60d feat: add comprehensive Quick Start section and clean:all command
- Add Quick Start for Developers section with most common commands
- Add clean:all command to package.json for cleaning all platforms
- Update BUILDING.md with accurate command descriptions and workflow
- Reorganize sections to prioritize npm commands at the top
- Add comprehensive environment configuration documentation
- Update appendices A and B with current build system information
- Fix port number in development server documentation (8080)
- Add troubleshooting quick fixes and platform-specific guidance
- Document environment variable precedence and loading process
- Add comprehensive Vite configuration documentation in Appendix B
2025-08-07 05:29:49 +00:00
64f24dc473 bump to version 1.0.5 and build 38 2025-07-25 06:02:59 -06:00
Matthew Raymer
442582685e doc: removed AndroidManifest.xml directions since this already handled in the build. We should possibly have it somewhere else for understanding configuration since its not something auto-generated by Capacitor. 2025-07-23 05:32:20 +00:00
002f240720 bump to version 1.0.4 and build 37 2025-07-20 20:37:26 -06:00
Matthew Raymer
e1b5367880 refactor: remove unused Vite configuration files and update documentation
Remove obsolete Vite configuration files that are no longer used by the build system
and update BUILDING.md to accurately reflect the current configuration structure.

**Removed Files:**
- vite.config.ts (47 lines) - Legacy configuration file
- vite.config.mts (70 lines) - Unused "main" configuration file

**Updated Documentation:**
- BUILDING.md - Corrected Vite configuration section to show actual usage

**Current Configuration Structure:**
- vite.config.web.mts - Used by build-web.sh
- vite.config.electron.mts - Used by build-electron.sh
- vite.config.capacitor.mts - Used by npm run build:capacitor
- vite.config.common.mts - Shared configuration utilities
- vite.config.utils.mts - Configuration utility functions

**Benefits:**
- Eliminates confusion about which config files to use
- Removes 117 lines of unused configuration code
- Documentation now matches actual build system usage
- Cleaner, more maintainable configuration structure

**Impact:**
- No functional changes to build process
- All platform builds continue to work correctly
- Reduced configuration complexity and maintenance overhead
2025-07-17 08:07:22 +00:00
Matthew Raymer
81a6c92068 Add comprehensive build scripts and Vite config documentation to BUILDING.md
- Add Appendix A: Build Scripts Reference with detailed documentation for all build scripts
- Add Appendix B: Vite Configuration Files Reference covering all Vite configs
- Add Appendix C: Build Script Integration explaining how components work together
- Document usage examples, exit codes, environment variables, and platform-specific considerations
- Provide complete reference for developers working with the multi-platform build system
2025-07-15 11:11:58 +00:00
Matthew Raymer
e106af4b98 docs: comprehensive build system documentation overhaul
- Expand BUILDING.md with detailed platform-specific build commands and workflows
- Add comprehensive web build script documentation with environment modes and Docker support
- Include complete iOS/Android build command reference with auto-run capabilities
- Document Electron build patterns with code signing and packaging instructions
- Add troubleshooting sections for common build issues across platforms
- Streamline README.md by removing redundant build system details
- Include build architecture overview with service worker and environment configuration
- Add comprehensive npm script reference for all build operations
- Document auto-run system and platform-specific testing workflows
- Include security considerations and code signing procedures for distribution

Improves developer experience with complete build system documentation and reduces onboarding friction for new contributors.
2025-07-15 10:17:34 +00:00
a9a8ba217c bump to version 1.0.3 build 36 2025-07-12 22:10:07 -06:00
Matthew Raymer
12496589a3 Add single-instance enforcement to Electron app
- Implement app.requestSingleInstanceLock() to prevent multiple instances
- Add user-friendly dialog when second instance is attempted
- Focus and restore existing window instead of creating new instance
- Prevent database corruption and resource conflicts
- Update documentation with single-instance behavior details
2025-07-11 07:23:48 +00:00
Matthew Raymer
5f790dd90b refactor: implement clean modular Electron build system
Replace chained npm commands with single build-electron.sh script supporting
multiple build modes (dev/test/prod), platforms (windows/mac/linux), and
package types (appimage/deb/dmg). Add platform validation to prevent
cross-platform build issues and integrate cleaning functionality.

- Replace 15+ chained npm scripts with single modular build script
- Add platform detection and validation with early failure on mismatch
- Support environment-specific builds (development/test/production)
- Add comprehensive documentation in docs/electron-build-patterns.md
- Update BUILDING.md with new build patterns and examples
- Remove legacy electron:build:* scripts and consolidate under build:electron:*
- Add clean:electron script integrated into build process
- Improve error handling and user feedback throughout build process

This refactoring follows DRY principles, eliminates command chaining,
and provides a more maintainable and user-friendly build system.
2025-07-11 06:33:21 +00:00
Matthew Raymer
8b95cc8d2b Fix: markdownlint MD012/MD019 errors in build-pattern-conversion-plan.md
- Removed extra blank lines at end of file to resolve MD012 (no-multiple-blanks)
- Standardized heading spacing to resolve MD019 (no-multiple-space-atx)
- Stripped trailing whitespace and ensured file ends with a single newline

All changes maintain content integrity and bring the file into full markdownlint compliance.
2025-07-10 13:07:51 +00:00
Matthew Raymer
c1875a86ee Add automated iOS build script with version management
* Create scripts/build-ios.sh with comprehensive build automation
* Handle pkgx Ruby/Gem environment configuration issues
* Support command-line version and build number updates
* Add environment validation for macOS and Xcode requirements
* Update BUILDING.md with automated build script documentation
2025-07-01 07:59:37 +00:00
Matthew Raymer
df437b2310 revert BUILDING to master version 2025-06-26 13:03:18 +00:00
Matthew Raymer
ea0f49d5c3 WIP: add Electron platform configuration to Capacitor
- Add electron platform section to capacitor.config.json
- Configure deep linking with timesafari:// scheme
- Set up build options for macOS, Windows, and Linux
- Configure output directory and file inclusion
- Add platform-specific build targets (DMG, NSIS, AppImage)
- Support both x64 and arm64 architectures for macOS
- Set appropriate app categories for each platform

This enables building TimeSafari as a native desktop application
using Capacitor's Electron platform while maintaining existing
mobile and web functionality.
2025-06-25 12:50:46 +00:00
Matthew Raymer
ca014a52de feat: modernize Electron build process with Vite-based CSS injection
- Replace manual CSS injection hack with Vite plugin
- Configure Vite to handle both main process and renderer builds
- Update build scripts to work with proper Vite output structure
- Remove fix-inject-css.js post-build script
- Update BUILDING.md documentation
- Add build-modernization-context.md for future reference

Technical changes:
- vite.config.electron.mts: Add electron-css-injection plugin and proper output config
- scripts/build-electron.js: Simplify to work with Vite-generated files
- BUILDING.md: Update Electron build documentation
- doc/build-modernization-context.md: Document context and decisions

Security/maintenance improvements:
- Eliminate manual file manipulation hacks
- Ensure deterministic, reproducible builds
- Centralize build logic in Vite configuration
- Improve developer experience and CI/CD compatibility

Author: Matthew Raymer
2025-06-25 10:46:11 +00:00
Matthew Raymer
fe55d0b431 WIP: Fix Electron build issues and migrate to @nostr/tools
- Fix TypeScript compilation errors in platform services
- Add missing rotateCamera method and isNativeApp property
- Fix index.html path resolution for packaged Electron apps
- Create separate Vite config for Electron renderer process
- Migrate from nostr-tools to @nostr/tools via JSR for ESM compatibility
- Update all Vite configs to handle mixed npm/JSR package management
- Add comprehensive documentation in BUILDING.md
- Fix preload script path resolution in packaged builds

Resolves build failures with deep imports and missing UI in AppImage.
2025-06-25 08:53:21 +00:00
Matthew Raymer
94ac7d648d migration: move to bash based build scripts 2025-06-24 11:11:33 +00:00
3baa6633a6 on mobile: bump version to 1.0.2 and build to 35 2025-06-20 20:27:16 -06:00
419243b5cd on mobile: bump version to 1.0.2 and build to 35 2025-06-20 20:27:16 -06:00
eea1cb995a bump to version 1.0.3-beta 2025-06-20 19:27:07 -06:00
96ee466022 bump to version 1.0.3-beta 2025-06-20 19:27:07 -06:00
a997d4cb92 Merge branch 'migrate-dexie-to-sqlite' 2025-06-20 11:49:51 -06:00
a12a7b87e3 Merge branch 'migrate-dexie-to-sqlite' 2025-06-20 11:49:51 -06:00
73733345ff bump to version 1.0.0-beta 2025-06-20 11:46:09 -06:00
30671d8fef bump to version 1.0.0-beta 2025-06-20 11:46:09 -06:00
5aa693de63 bump to version 1.0.0 2025-06-20 11:20:57 -06:00
a999b58766 bump to version 1.0.0 2025-06-20 11:20:57 -06:00
9b69c0b22c bump to version 0.5.9 2025-06-20 10:41:48 -06:00
c7e2b53c9f bump to version 0.5.9 2025-06-20 10:41:48 -06:00
e759e4785b IndexedDB migration: set USE_DEXIE_DB to false, remove unused functions, add raw display of data 2025-06-19 09:47:18 -06:00
a53f9dcbd6 IndexedDB migration: set USE_DEXIE_DB to false, remove unused functions, add raw display of data 2025-06-19 09:47:18 -06:00
16557f1e4b update build instruction & package-lock.json 2025-06-18 17:32:41 -06:00
bd9e69174c update build instruction & package-lock.json 2025-06-18 17:32:41 -06:00
20ade415dc bump to version 0.5.8 build 34 2025-06-18 16:31:31 -06:00
2b7c204013 bump to version 0.5.8 build 34 2025-06-18 16:31:31 -06:00
a5c5c2b9dd bump to build 33 and version 0.5.7 2025-06-18 02:34:18 -06:00
1a886524b6 bump to build 33 and version 0.5.7 2025-06-18 02:34:18 -06:00
8629cefa13 bump to build 32 & version 0.5.6 2025-06-17 05:25:45 -06:00
911028849b bump to build 32 & version 0.5.6 2025-06-17 05:25:45 -06:00
4a43bc9c6c bump build to 31 and version to 0.5.5 2025-06-16 07:38:16 -06:00
69a9f5306f bump build to 31 and version to 0.5.5 2025-06-16 07:38:16 -06:00
0d152adbf2 remove the deep-link autoVerify because it caused a build failure 2025-06-14 22:06:12 -06:00
25be1daab1 remove the deep-link autoVerify because it caused a build failure 2025-06-14 22:06:12 -06:00
cead308800 incorporate one of the BUILDING steps directly into the file 2025-06-13 22:37:03 -06:00
12a76e2d40 incorporate one of the BUILDING steps directly into the file 2025-06-13 22:37:03 -06:00
676a301331 bump to build 30 version 0.5.4 2025-06-13 22:36:28 -06:00
63c6cb8dc4 bump to build 30 version 0.5.4 2025-06-13 22:36:28 -06:00