diff --git a/README.md b/README.md index 0bf8b36..72ece1f 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # hsrw_campus_website -The app landing page for the HSRW Campus App. +The app landing page for the Campus Mate Rhein-Waal App. ![App Screenshot 1](./screenshot/one.png) ![App Screenshot 2](./screenshot/two.png) diff --git a/lib/app.dart b/lib/app.dart index eaf714c..5dab196 100644 --- a/lib/app.dart +++ b/lib/app.dart @@ -16,7 +16,7 @@ class App extends StatefulComponent { } class _AppState extends State { - bool _isDarkMode = true; + bool _isDarkMode = false; void _toggleTheme(bool value) { setState(() { @@ -33,33 +33,35 @@ class _AppState extends State { classes: 'min-h-screen ${_isDarkMode ? 'bg-gray-900 text-white' : 'bg-gray-100 text-gray-900'} flex flex-col', [ - Router(routes: [ - ShellRoute( - builder: (context, state, child) => Fragment(children: [ - div(classes: 'fixed top-0 left-0 right-0 z-10', [ - const Header(), + Router( + routes: [ + ShellRoute( + builder: (context, state, child) => Fragment(children: [ + div(classes: 'fixed top-0 left-0 right-0 z-10', [ + const Header(), + ]), + div(classes: 'flex-grow pt-24', [ + child, + ]), + const Footer(), ]), - div(classes: 'flex-grow pt-24', [ - child, - ]), - const Footer(), - ]), - routes: [ - Route( - path: '/', - title: 'Home', - builder: (context, state) => const LandingPage()), - Route( - path: '/privacy', - title: 'Privacy Policy', - builder: (context, state) => const PrivacyPolicyPage()), - Route( - path: '/tos', - title: 'Terms of Service', - builder: (context, state) => const TermsOfServicePage()), - ], - ), - ]), + routes: [ + Route( + path: '/', + title: 'Home', + builder: (context, state) => const LandingPage()), + Route( + path: '/privacy', + title: 'Privacy Policy', + builder: (context, state) => const PrivacyPolicyPage()), + Route( + path: '/tos', + title: 'Terms of Service', + builder: (context, state) => const TermsOfServicePage()), + ], + ), + ], + ), ], ), ); diff --git a/lib/components/header.dart b/lib/components/header.dart index 079acce..79827ba 100644 --- a/lib/components/header.dart +++ b/lib/components/header.dart @@ -65,26 +65,26 @@ class _HeaderState extends State
{ [ span(classes: 'sr-only', [text('Open main menu')]), // Hamburger icon - svg( - classes: 'h-6 w-6', - attributes: { - 'fill': 'none', - 'viewBox': '0 0 24 24', - 'stroke': 'currentColor', - 'aria-hidden': 'true', - }, - [ - DomComponent( - tag: 'path', - attributes: { - 'stroke-linecap': 'round', - 'stroke-linejoin': 'round', - 'stroke-width': '2', - 'd': 'M4 6h16M4 12h16M4 18h16', - }, - ), - ], - ), + // svg( + // classes: 'h-6 w-6', + // attributes: { + // 'fill': 'none', + // 'viewBox': '0 0 24 24', + // 'stroke': 'currentColor', + // 'aria-hidden': 'true', + // }, + // [ + // path( + // attributes: { + // 'stroke-linecap': 'round', + // 'stroke-linejoin': 'round', + // 'stroke-width': '2', + // 'd': 'M4 6h16M4 12h16M4 18h16', + // }, + // [], + // ), + // ], + // ), ], ), ], @@ -104,16 +104,24 @@ class _HeaderState extends State
{ ), ], ), + // Button( + // label: 'Button 1', + // onPressed: () { + // print("Button 1 pressed"); + // }, + // ), // Theme toggle button + button( - classes: - 'ml-4 p-2 rounded-md ${themeState.isDarkMode ? 'bg-gray-700 text-yellow-400' : 'bg-gray-200 text-gray-800'}', - events: { - 'click': (e) => - themeState.toggleTheme(!themeState.isDarkMode), - }, + // classes: + // 'ml-4 p-2 rounded-md ${themeState.isDarkMode ? 'bg-gray-700 text-yellow-400' : 'bg-gray-200 text-gray-800'}', + events: events(onClick: () { + print('Clicked!'); + // themeState.toggleTheme(!themeState.isDarkMode); + }), [ - text(themeState.isDarkMode ? '☀️' : '🌙'), + // text(themeState.isDarkMode ? '☀️' : '🌙'), + // text(themeState.isDarkMode ? '☀️' : '🌙'), ], ), ], @@ -144,3 +152,18 @@ class _HeaderState extends State
{ ); } } + +class Button extends StatelessComponent { + const Button({required this.label, required this.onPressed, super.key}); + + final String label; + final VoidCallback onPressed; + + @override + Iterable build(BuildContext context) sync* { + yield button( + onClick: onPressed, + [text(label)], + ); + } +} diff --git a/lib/config/app_config.dart b/lib/config/app_config.dart index 716212e..4ab0c3a 100644 --- a/lib/config/app_config.dart +++ b/lib/config/app_config.dart @@ -1,6 +1,6 @@ class AppConfig { - static const String appName = 'HSRW Campus App'; - static const String appLogo = 'https://placehold.co/40x40?text=Logo'; + static const String appName = 'Campus Mate'; + static const String appLogo = 'images/logo.png'; static const Map navLinks = { 'Home': '/', @@ -8,48 +8,46 @@ class AppConfig { 'Terms': '/tos', }; - static const String heroTitle = 'HSRW Campus App'; - static const String heroSubtitle = - 'Lorem ipsum, dolor sit amet consectetur adipisicing elit.'; - static const String heroImage = - 'https://placehold.co/640x1386?text=App+Screenshot'; + static const String heroTitle = 'Campus Mate Rhein-Waal'; + static const String heroSubtitle = 'by students for students'; + static const String heroImage = 'images/app_screen.png'; static const String featuresTitle = 'Features'; - static const String featuresSubtitle = 'Everything you need'; + static const String featuresSubtitle = 'Your all-in-one campus companion'; static const String featuresDescription = - 'Lorem ipsum dolor sit amet consect adipisicing elit. Possimus magnam voluptatum cupiditate veritatis in accusamus quisquam.'; + 'Check out what we\'ve cooked up to make your campus life a whole lot smoother.'; static const List features = [ Feature( - title: 'Feature 1', + title: 'Mensa', description: - 'Lorem ipsum, dolor sit amet consectetur adipisicing elit. Maiores impedit perferendis suscipit eaque, iste dolor cupiditate blanditiis ratione.', - icon: '🚀', + 'Check out the weekly menus, so you always know what deliciousness awaits in the Mensa. Plus, filter by your dietary needs and allergies to find the perfect meal for you. No more surprises.', + icon: '🍽️', ), Feature( - title: 'Feature 2', + title: 'Timetable', description: - 'Lorem ipsum, dolor sit amet consectetur adipisicing elit. Maiores impedit perferendis suscipit eaque, iste dolor cupiditate blanditiis ratione.', - icon: '💡', + 'Build your perfect timetable, add reminders and notes, and stay organized throughout the semester. Your academic life, in one place.', + icon: '📆', ), Feature( - title: 'Feature 3', + title: 'Campus Navigator', description: - 'Lorem ipsum, dolor sit amet consectetur adipisicing elit. Maiores impedit perferendis suscipit eaque, iste dolor cupiditate blanditiis ratione.', - icon: '🔧', + 'Your guide to everything on campus. Easily find buildings, classrooms, and offices with our interactive map and room finder.', + icon: '📍', ), Feature( - title: 'Feature 4', + title: 'And There\'s More!', description: - 'Lorem ipsum, dolor sit amet consectetur adipisicing elit. Maiores impedit perferendis suscipit eaque, iste dolor cupiditate blanditiis ratione.', - icon: '📊', + 'We\'re constantly adding new features to make your student experience even better. Discover university news, listen to the HSRW podcasts, conveniently book study rooms, and much more within the app.', + icon: '😎', ), ]; static const String ctaTitle = 'Ready to dive in?'; - static const String ctaSubtitle = 'Download now and start your journey.'; + static const String ctaSubtitle = 'Download now!'; static const String ctaDescription = - 'Available on iOS and Android. Download now and experience the future.'; + 'Available on iOS and Android. (Desktop support coming soon!)'; static const String appStoreLink = '#'; static const String appStoreImage = 'https://placehold.co/120x40?text=App+Store'; @@ -58,7 +56,7 @@ class AppConfig { 'https://placehold.co/135x40?text=Google+Play'; static const String footerText = - '© 2023 HSRW Campus App. All rights reserved.'; + '© 2025 Campus Mate Rhein-Waal. All rights reserved.'; // Privacy Policy static const String privacyTitle = 'Privacy Policy'; diff --git a/lib/jaspr_options.dart b/lib/jaspr_options.dart index 802dc79..6f745a9 100644 --- a/lib/jaspr_options.dart +++ b/lib/jaspr_options.dart @@ -2,7 +2,6 @@ // Generated with jaspr_builder import 'package:jaspr/jaspr.dart'; -import 'package:hsrw_campus_website/pages/home.dart' as prefix0; /// Default [JasprOptions] for use with your jaspr project. /// @@ -21,8 +20,5 @@ import 'package:hsrw_campus_website/pages/home.dart' as prefix0; /// } /// ``` final defaultJasprOptions = JasprOptions( - clients: { - prefix0.Home: ClientTarget('pages/home'), - }, styles: () => [], ); diff --git a/lib/pages/home.dart b/lib/pages/home.dart index 61397ef..4304fa1 100644 --- a/lib/pages/home.dart +++ b/lib/pages/home.dart @@ -1,3 +1,5 @@ +import 'package:hsrw_campus_website/components/header.dart'; +import 'package:hsrw_campus_website/state/theme_state.dart'; import 'package:jaspr/jaspr.dart'; import '../components/counter.dart'; @@ -7,7 +9,6 @@ import '../components/counter.dart'; // - this file and any imported file must be compilable for both server and client environments. // - this component and any child components will be built once on the server during pre-rendering and then // again on the client during normal rendering. -@client class Home extends StatefulComponent { const Home({super.key}); @@ -16,7 +17,6 @@ class Home extends StatefulComponent { } class HomeState extends State { - @override void initState() { super.initState(); @@ -33,12 +33,28 @@ class HomeState extends State { @override Iterable build(BuildContext context) sync* { + // var themeState = ThemeState.of(context); yield section([ img(src: 'images/logo.png', width: 80), h1([text('Welcome')]), p([text('You successfully create a new Jaspr site.')]), div(styles: Styles.box(height: 100.px), []), const Counter(), + button( + onClick: () { + print('Hello client'); + // themeState.toggleTheme(!themeState.isDarkMode); + }, + [ + text('Click Me'), + ], + ), + // Button( + // label: 'Button 1', + // onPressed: () { + // print("Button 1 pressed"); + // }, + // ), ]); } } diff --git a/pubspec.lock b/pubspec.lock index 15f5db2..ce5f221 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -5,23 +5,23 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - sha256: "45cfa8471b89fb6643fe9bf51bd7931a76b8f5ec2d65de4fb176dba8d4f22c77" + sha256: "16e298750b6d0af7ce8a3ba7c18c69c3785d11b15ec83f6dcd0ad2a0009b3cab" url: "https://pub.dev" source: hosted - version: "73.0.0" + version: "76.0.0" _macros: dependency: transitive description: dart source: sdk - version: "0.3.2" + version: "0.3.3" analyzer: dependency: transitive description: name: analyzer - sha256: "4959fec185fe70cce007c57e9ab6983101dbe593d2bf8bbfb4453aaec0cf470a" + sha256: "1f14db053a8c23e260789e9b0980fa27f2680dd640932cae5e1137cce0e46e1e" url: "https://pub.dev" source: hosted - version: "6.8.0" + version: "6.11.0" analyzer_plugin: dependency: transitive description: @@ -34,34 +34,34 @@ packages: dependency: transitive description: name: archive - sha256: cb6a278ef2dbb298455e1a713bda08524a175630ec643a242c399c932a0a1f7d + sha256: "6199c74e3db4fbfbd04f66d739e72fe11c8a8957d5f219f1f4482dbde6420b5a" url: "https://pub.dev" source: hosted - version: "3.6.1" + version: "4.0.2" args: dependency: transitive description: name: args - sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a" + sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6 url: "https://pub.dev" source: hosted - version: "2.5.0" + version: "2.6.0" async: dependency: transitive description: name: async - sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63 url: "https://pub.dev" source: hosted - version: "2.11.0" + version: "2.12.0" bazel_worker: dependency: transitive description: name: bazel_worker - sha256: "4eef19cc486c289e4b06c69d0f6f3192e85cc93c25d4d15d02afb205e388d2f0" + sha256: "57035594b87d9f5af99f1a80e1edf5411dadbdf5acfc4f90403e3849f57dd0f0" url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" binary_codec: dependency: transitive description: @@ -74,66 +74,66 @@ packages: dependency: transitive description: name: boolean_selector - sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" build: dependency: transitive description: name: build - sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" + sha256: cef23f1eda9b57566c81e2133d196f8e3df48f244b317368d65c5943d91148f0 url: "https://pub.dev" source: hosted - version: "2.4.1" + version: "2.4.2" build_config: dependency: transitive description: name: build_config - sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 + sha256: "4ae2de3e1e67ea270081eaee972e1bd8f027d459f249e0f1186730784c2e7e33" url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" build_daemon: dependency: transitive description: name: build_daemon - sha256: "79b2aef6ac2ed00046867ed354c88778c9c0f029df8a20fe10b5436826721ef9" + sha256: "294a2edaf4814a378725bfe6358210196f5ea37af89ecd81bfa32960113d4948" url: "https://pub.dev" source: hosted - version: "4.0.2" + version: "4.0.3" build_modules: dependency: transitive description: name: build_modules - sha256: "403ba034d94f1a0f26362fe14fd83e9ff33644f5cbe879982920e3d209650b43" + sha256: "5d95f6a500e3cb27eebfb5d264c683ca658fcb39ef73ee403595d7a2b2955a44" url: "https://pub.dev" source: hosted - version: "5.0.9" + version: "5.0.10" build_resolvers: dependency: transitive description: name: build_resolvers - sha256: "339086358431fa15d7eca8b6a36e5d783728cf025e559b834f4609a1fcfb7b0a" + sha256: "99d3980049739a985cf9b21f30881f46db3ebc62c5b8d5e60e27440876b1ba1e" url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.4.3" build_runner: dependency: "direct dev" description: name: build_runner - sha256: "028819cfb90051c6b5440c7e574d1896f8037e3c96cf17aaeb054c9311cfbf4d" + sha256: "74691599a5bc750dc96a6b4bfd48f7d9d66453eab04c7f4063134800d6a5c573" url: "https://pub.dev" source: hosted - version: "2.4.13" + version: "2.4.14" build_runner_core: dependency: transitive description: name: build_runner_core - sha256: f8126682b87a7282a339b871298cc12009cb67109cfa1614d6436fb0289193e0 + sha256: "22e3aa1c80e0ada3722fe5b63fd43d9c8990759d0a2cf489c8c5d7b2bdebc021" url: "https://pub.dev" source: hosted - version: "7.3.2" + version: "8.0.0" built_collection: dependency: transitive description: @@ -146,10 +146,10 @@ packages: dependency: transitive description: name: built_value - sha256: c7913a9737ee4007efedaffc968c049fd0f3d0e49109e778edc10de9426005cb + sha256: "28a712df2576b63c6c005c465989a348604960c0958d28be5303ba9baa841ac2" url: "https://pub.dev" source: hosted - version: "8.9.2" + version: "8.9.3" checked_yaml: dependency: transitive description: @@ -170,74 +170,82 @@ packages: dependency: transitive description: name: cli_util - sha256: c05b7406fdabc7a49a3929d4af76bcaccbbffcbcdcf185b082e1ae07da323d19 + sha256: ff6785f7e9e3c38ac98b2fb035701789de90154024a75b6cb926445e83197d1c url: "https://pub.dev" source: hosted - version: "0.4.1" + version: "0.4.2" code_builder: dependency: transitive description: name: code_builder - sha256: f692079e25e7869c14132d39f223f8eec9830eb76131925143b2129c4bb01b37 + sha256: "0ec10bf4a89e4c613960bf1e8b42c64127021740fb21640c29c909826a5eea3e" url: "https://pub.dev" source: hosted - version: "4.10.0" + version: "4.10.1" collection: dependency: transitive description: name: collection - sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" url: "https://pub.dev" source: hosted - version: "1.19.0" + version: "1.19.1" convert: dependency: transitive description: name: convert - sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.1.2" crypto: dependency: transitive description: name: crypto - sha256: ec30d999af904f33454ba22ed9a86162b35e52b44ac4807d1d93c288041d7d27 + sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855" url: "https://pub.dev" source: hosted - version: "3.0.5" + version: "3.0.6" csslib: dependency: transitive description: name: csslib - sha256: "706b5707578e0c1b4b7550f64078f0a0f19dec3f50a178ffae7006b0a9ca58fb" + sha256: "09bad715f418841f976c77db72d5398dc1253c21fb9c0c7f0b0b985860b2d58e" url: "https://pub.dev" source: hosted - version: "1.0.0" + version: "1.0.2" custom_lint: dependency: transitive description: name: custom_lint - sha256: "4939d89e580c36215e48a7de8fd92f22c79dcc3eb11fda84f3402b3b45aec663" + sha256: "3486c470bb93313a9417f926c7dd694a2e349220992d7b9d14534dc49c15bba9" url: "https://pub.dev" source: hosted - version: "0.6.5" + version: "0.7.0" custom_lint_builder: dependency: transitive description: name: custom_lint_builder - sha256: d9e5bb63ed52c1d006f5a1828992ba6de124c27a531e8fba0a31afffa81621b3 + sha256: "42cdc41994eeeddab0d7a722c7093ec52bd0761921eeb2cbdbf33d192a234759" url: "https://pub.dev" source: hosted - version: "0.6.5" + version: "0.7.0" custom_lint_core: dependency: transitive description: name: custom_lint_core - sha256: "4ddbbdaa774265de44c97054dcec058a83d9081d071785ece601e348c18c267d" + sha256: "02450c3e45e2a6e8b26c4d16687596ab3c4644dd5792e3313aa9ceba5a49b7f5" url: "https://pub.dev" source: hosted - version: "0.6.5" + version: "0.7.0" + custom_lint_visitor: + dependency: transitive + description: + name: custom_lint_visitor + sha256: bfe9b7a09c4775a587b58d10ebb871d4fe618237639b1e84d5ec62d7dfef25f9 + url: "https://pub.dev" + source: hosted + version: "1.0.0+6.11.0" dart_style: dependency: transitive description: @@ -246,6 +254,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.3.7" + ffi: + dependency: transitive + description: + name: ffi + sha256: "16ed7b077ef01ad6170a3d0c57caa4a112a38d7a2ed5602e0aca9ca6f3d98da6" + url: "https://pub.dev" + source: hosted + version: "2.1.3" file: dependency: transitive description: @@ -258,10 +274,10 @@ packages: dependency: transitive description: name: fixnum - sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" freezed_annotation: dependency: transitive description: @@ -306,10 +322,10 @@ packages: dependency: transitive description: name: html - sha256: "3a7812d5bcd2894edf53dfaf8cd640876cf6cef50a8f238745c8b8120ea74d3a" + sha256: "1fc58edeaec4307368c60d59b7e15b9d658b57d7f3125098b6294153c75337ec" url: "https://pub.dev" source: hosted - version: "0.15.4" + version: "0.15.5" http: dependency: transitive description: @@ -322,74 +338,74 @@ packages: dependency: transitive description: name: http_multi_server - sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" + sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 url: "https://pub.dev" source: hosted - version: "3.2.1" + version: "3.2.2" http_parser: dependency: transitive description: name: http_parser - sha256: "40f592dd352890c3b60fec1b68e786cefb9603e05ff303dbc4dda49b304ecdf4" + sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" url: "https://pub.dev" source: hosted - version: "4.1.0" + version: "4.1.2" io: dependency: transitive description: name: io - sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" + sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b url: "https://pub.dev" source: hosted - version: "1.0.4" + version: "1.0.5" jaspr: dependency: "direct main" description: name: jaspr - sha256: "0e43fa3bfa364ef0f51cf849b20dbad0bf6c4c3c0f1b1adab8a09e2c7730d55c" + sha256: "97ba5e52cee1484b00491a75914a39a598f059af6742cbaa83badc9b3bbbf5e2" url: "https://pub.dev" source: hosted - version: "0.16.0" + version: "0.17.0" jaspr_builder: dependency: "direct dev" description: name: jaspr_builder - sha256: "383caac3d4ecf025519a4e582660869150453020ccdb6fec763c558046469b4f" + sha256: "35a87caa199f6791cd8543538db4961e62c3161370398afb4478bdcc4ed31689" url: "https://pub.dev" source: hosted - version: "0.16.0" + version: "0.17.0" jaspr_lints: dependency: "direct dev" description: name: jaspr_lints - sha256: "8622080c80d16349268c05ed4cced8ac827002f71c4ea08b6e4fe04d585d85a3" + sha256: "19fe1863e6f91252219667f8d81cd60dcc9bec3823474de1e1d7e5f8d21ef13d" url: "https://pub.dev" source: hosted - version: "0.1.2" + version: "0.2.0" jaspr_router: dependency: "direct main" description: name: jaspr_router - sha256: "192d1baf7d722e7c04d4d78676ff97ad2eb920839b1ffee1838d8650d5e1be7a" + sha256: "167e39a89c5b45b6a936e15c68fabb8d4b9a80715e59f9d1bbdfee9a8a52711f" url: "https://pub.dev" source: hosted - version: "0.6.0" + version: "0.6.1" jaspr_tailwind: dependency: "direct dev" description: name: jaspr_tailwind - sha256: "6bc8e5723d0b58816c71044e50b0f580e6518d9b6e6664e52fbbd81efc416705" + sha256: "812c38dee6c46117f1422e7077fe6c416ec23fc387d53b0debc6de704ef268a9" url: "https://pub.dev" source: hosted - version: "0.3.0" + version: "0.3.1" jaspr_web_compilers: dependency: "direct dev" description: name: jaspr_web_compilers - sha256: "068e42fbb89e5a7b7d47849886669b80a0d9e011f76bbfd85f6444d0b80cc4f4" + sha256: "291b75c7da5b928edc0bafe4b362a6f506b79ff7625db38817d2b2756d31c525" url: "https://pub.dev" source: hosted - version: "4.0.10" + version: "4.1.0" js: dependency: transitive description: @@ -410,34 +426,34 @@ packages: dependency: "direct dev" description: name: lints - sha256: cbf8d4b858bb0134ef3ef87841abdf8d63bfc255c266b7bf6b39daa1085c4290 + sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 url: "https://pub.dev" source: hosted - version: "3.0.0" + version: "5.1.1" logging: dependency: transitive description: name: logging - sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" + sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.3.0" macros: dependency: transitive description: name: macros - sha256: "0acaed5d6b7eab89f63350bccd82119e6c602df0f391260d0e32b5e23db79536" + sha256: "1d9e801cd66f7ea3663c45fc708450db1fa57f988142c64289142c9b7ee80656" url: "https://pub.dev" source: hosted - version: "0.1.2-main.4" + version: "0.1.3-main.0" matcher: dependency: transitive description: name: matcher - sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 url: "https://pub.dev" source: hosted - version: "0.12.16+1" + version: "0.12.17" meta: dependency: transitive description: @@ -458,18 +474,18 @@ packages: dependency: transitive description: name: package_config - sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" + sha256: "92d4488434b520a62570293fbd33bb556c7d49230791c1b4bbd973baf6d2dc67" url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" path: dependency: transitive description: name: path - sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" url: "https://pub.dev" source: hosted - version: "1.9.0" + version: "1.9.1" pool: dependency: transitive description: @@ -478,6 +494,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.5.1" + posix: + dependency: transitive + description: + name: posix + sha256: a0117dc2167805aa9125b82eee515cc891819bac2f538c83646d355b16f58b9a + url: "https://pub.dev" + source: hosted + version: "6.0.1" protobuf: dependency: transitive description: @@ -490,18 +514,18 @@ packages: dependency: transitive description: name: pub_semver - sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" + sha256: "7b3cfbf654f3edd0c6298ecd5be782ce997ddf0e00531b9464b55245185bbbbd" url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.1.5" pubspec_parse: dependency: transitive description: name: pubspec_parse - sha256: c799b721d79eb6ee6fa56f00c04b472dcd44a30d258fac2174a6ec57302678f8 + sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082" url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.5.0" rxdart: dependency: transitive description: @@ -554,10 +578,10 @@ packages: dependency: transitive description: name: shelf_web_socket - sha256: "073c147238594ecd0d193f3456a5fe91c4b0abbcc68bf5cd95b36c4e194ac611" + sha256: cc36c297b52866d203dbf9332263c94becc2fe0ceaa9681d07b6ef9807023b67 url: "https://pub.dev" source: hosted - version: "2.0.0" + version: "2.0.1" source_gen: dependency: transitive description: @@ -570,18 +594,18 @@ packages: dependency: transitive description: name: source_maps - sha256: "708b3f6b97248e5781f493b765c3337db11c5d2c81c3094f10904bfa8004c703" + sha256: "190222579a448b03896e0ca6eca5998fa810fda630c1d65e2f78b3f638f54812" url: "https://pub.dev" source: hosted - version: "0.10.12" + version: "0.10.13" source_span: dependency: transitive description: name: source_span - sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" url: "https://pub.dev" source: hosted - version: "1.10.0" + version: "1.10.1" sprintf: dependency: transitive description: @@ -594,66 +618,74 @@ packages: dependency: transitive description: name: stack_trace - sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377" + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" url: "https://pub.dev" source: hosted - version: "1.12.0" + version: "1.12.1" stream_channel: dependency: transitive description: name: stream_channel - sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.4" stream_transform: dependency: transitive description: name: stream_transform - sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" + sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871 url: "https://pub.dev" source: hosted - version: "2.1.0" + version: "2.1.1" string_scanner: dependency: transitive description: name: string_scanner - sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3" + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.4.1" term_glyph: dependency: transitive description: name: term_glyph - sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.2.2" test_api: dependency: transitive description: name: test_api - sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c" + sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd url: "https://pub.dev" source: hosted - version: "0.7.3" + version: "0.7.4" timing: dependency: transitive description: name: timing - sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" + sha256: "62ee18aca144e4a9f29d212f5a4c6a053be252b895ab14b5821996cff4ed90fe" url: "https://pub.dev" source: hosted - version: "1.0.1" + version: "1.0.2" typed_data: dependency: transitive description: name: typed_data - sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 url: "https://pub.dev" source: hosted - version: "1.3.2" + version: "1.4.0" + universal_web: + dependency: transitive + description: + name: universal_web + sha256: fd161c6424fd78625097429b0050c2ea967304fb2b8b5ea0c0f51cd41b915053 + url: "https://pub.dev" + source: hosted + version: "1.1.0+2" uuid: dependency: transitive description: @@ -666,18 +698,18 @@ packages: dependency: transitive description: name: vm_service - sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b + sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14" url: "https://pub.dev" source: hosted - version: "14.3.0" + version: "14.3.1" watcher: dependency: transitive description: name: watcher - sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" + sha256: "69da27e49efa56a15f8afe8f4438c4ec02eff0a117df1b22ea4aad194fe1c104" url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" web: dependency: transitive description: @@ -706,9 +738,9 @@ packages: dependency: transitive description: name: yaml - sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce url: "https://pub.dev" source: hosted - version: "3.1.2" + version: "3.1.3" sdks: - dart: ">=3.5.0 <3.6.0" + dart: ">=3.6.0 <3.7.0-z" diff --git a/pubspec.yaml b/pubspec.yaml index 7157643..93f4e6b 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -6,16 +6,16 @@ environment: sdk: '>=3.0.0 <4.0.0' dependencies: - jaspr: ^0.16.0 + jaspr: ^0.17.0 jaspr_router: ^0.6.0 dev_dependencies: build_runner: ^2.4.0 jaspr_web_compilers: ^4.0.10 - jaspr_builder: ^0.16.0 - jaspr_lints: ^0.1.2 - lints: ^3.0.0 - jaspr_tailwind: ^0.3.0 + jaspr_builder: ^0.17.0 + jaspr_lints: ^0.2.0 + lints: ^5.1.1 + jaspr_tailwind: ^0.3.1 jaspr: mode: static diff --git a/web/favicon.ico b/web/favicon.ico old mode 100644 new mode 100755 index bd829b4..7ffb1a4 Binary files a/web/favicon.ico and b/web/favicon.ico differ diff --git a/web/images/app_screen.png b/web/images/app_screen.png new file mode 100644 index 0000000..20aa403 Binary files /dev/null and b/web/images/app_screen.png differ diff --git a/web/images/icon-192.png b/web/images/icon-192.png new file mode 100755 index 0000000..3c7c223 Binary files /dev/null and b/web/images/icon-192.png differ diff --git a/web/images/logo.png b/web/images/logo.png index 3cf9187..c24ebf7 100644 Binary files a/web/images/logo.png and b/web/images/logo.png differ diff --git a/web/images/logo_white.png b/web/images/logo_white.png new file mode 100644 index 0000000..df38655 Binary files /dev/null and b/web/images/logo_white.png differ