GithubHelp home page GithubHelp logo

nikspyratos / toybox Goto Github PK

View Code? Open in Web Editor NEW
115.0 115.0 6.0 6.87 MB

Opinionated TALL stack starter kit for Laravel solopreneurs

License: MIT License

PHP 17.18% JavaScript 3.58% CSS 3.35% Blade 69.13% Shell 6.76%
alpinejs caddy filament frankenphp laravel livewire php sqlite

toybox's People

Contributors

laravel-shift avatar nikspyratos avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

toybox's Issues

Error on bin/init_dev.sh

Hi there,

I just found this Repo and it sounds really interesting.
However I can't get it to run right now.
I cloned the Repo, changed the Hostname in the Caddyfile and the templates/horizon.conf, and tried running the ./bin/init_dev.sh and get the following output:

App Name: LaravelTest
Domain (WITHOUT 'https:// or www.'): [HOSTNAME WITHOUT PREFIXES]
Database name: laravel
sed: -e expression #1, char 1: unknown command: `.'
sed: -e expression #1, char 1: unknown command: `.'
sed: -e expression #1, char 1: unknown command: `.'
sed: -e expression #1, char 1: unknown command: `.'
sed: -e expression #1, char 1: unknown command: `.'
sed: -e expression #1, char 1: unknown command: `.'
sed: -e expression #1, char 1: unknown command: `.'
sed: -e expression #1, char 1: unknown command: `.'
sed: -e expression #1, char 1: unknown command: `.'
sed: -e expression #1, char 1: unknown command: `.'
sed: -e expression #1, char 1: unknown command: `.'
sed: -e expression #1, char 1: unknown command: `.'
Installing dependencies from lock file (including require-dev)
Verifying lock file contents can be installed on current platform.
Your lock file does not contain a compatible set of packages. Please run composer update.

  Problem 1
    - filament/support is locked to version v3.0.34 and an update of this package was not requested.
    - filament/support v3.0.34 requires ext-intl * -> it is missing from your system. Install or enable PHP's intl extension.
  Problem 2
    - filament/support v3.0.34 requires ext-intl * -> it is missing from your system. Install or enable PHP's intl extension.
    - filament/widgets v3.0.34 requires filament/support v3.0.34 -> satisfiable by filament/support[v3.0.34].
    - filament/widgets is locked to version v3.0.34 and an update of this package was not requested.

To enable extensions, verify that they are enabled in your .ini files:
    - /etc/php/8.2/cli/php.ini
    - /etc/php/8.2/cli/conf.d/10-mysqlnd.ini
    - /etc/php/8.2/cli/conf.d/10-opcache.ini
    - /etc/php/8.2/cli/conf.d/10-pdo.ini
    - /etc/php/8.2/cli/conf.d/15-xml.ini
    - /etc/php/8.2/cli/conf.d/20-bcmath.ini
    - /etc/php/8.2/cli/conf.d/20-bz2.ini
    - /etc/php/8.2/cli/conf.d/20-calendar.ini
    - /etc/php/8.2/cli/conf.d/20-ctype.ini
    - /etc/php/8.2/cli/conf.d/20-curl.ini
    - /etc/php/8.2/cli/conf.d/20-dom.ini
    - /etc/php/8.2/cli/conf.d/20-exif.ini
    - /etc/php/8.2/cli/conf.d/20-ffi.ini
    - /etc/php/8.2/cli/conf.d/20-fileinfo.ini
    - /etc/php/8.2/cli/conf.d/20-ftp.ini
    - /etc/php/8.2/cli/conf.d/20-gd.ini
    - /etc/php/8.2/cli/conf.d/20-gettext.ini
    - /etc/php/8.2/cli/conf.d/20-iconv.ini
    - /etc/php/8.2/cli/conf.d/20-mbstring.ini
    - /etc/php/8.2/cli/conf.d/20-mcrypt.ini
    - /etc/php/8.2/cli/conf.d/20-mysqli.ini
    - /etc/php/8.2/cli/conf.d/20-pdo_mysql.ini
    - /etc/php/8.2/cli/conf.d/20-phar.ini
    - /etc/php/8.2/cli/conf.d/20-posix.ini
    - /etc/php/8.2/cli/conf.d/20-readline.ini
    - /etc/php/8.2/cli/conf.d/20-shmop.ini
    - /etc/php/8.2/cli/conf.d/20-simplexml.ini
    - /etc/php/8.2/cli/conf.d/20-sockets.ini
    - /etc/php/8.2/cli/conf.d/20-sysvmsg.ini
    - /etc/php/8.2/cli/conf.d/20-sysvsem.ini
    - /etc/php/8.2/cli/conf.d/20-sysvshm.ini
    - /etc/php/8.2/cli/conf.d/20-tokenizer.ini
    - /etc/php/8.2/cli/conf.d/20-xmlreader.ini
    - /etc/php/8.2/cli/conf.d/20-xmlwriter.ini
    - /etc/php/8.2/cli/conf.d/20-xsl.ini
    - /etc/php/8.2/cli/conf.d/20-zip.ini
You can also run `php --ini` in a terminal to see which files are used by PHP in CLI mode.
Alternatively, you can run Composer with `--ignore-platform-req=ext-intl` to temporarily ignore these required extensions.

up to date, audited 118 packages in 741ms

21 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities

> build
> vite build

vite v4.4.7 building for production...
transforming (32) node_modules/axios/lib/helpers/AxiosURLSearchParams.jsUnable to resolve `@import "../../../../vendor/filament/filament/resources/css/theme.css"` from /home/code/vscode/test/toybox/resources/css/filament/admin
✓ 35 modules transformed.
✓ built in 1.78s
[vite:css] [postcss] ENOENT: no such file or directory, open '../../../../vendor/filament/filament/resources/css/theme.css'
file: /home/code/vscode/test/toybox/resources/css/filament/admin/theme.css:undefined:undefined
error during build:
Error: [postcss] ENOENT: no such file or directory, open '../../../../vendor/filament/filament/resources/css/theme.css'
PHP Warning:  require(/home/code/vscode/test/toybox/vendor/autoload.php): Failed to open stream: No such file or directory in /home/code/vscode/test/toybox/artisan on line 18
PHP Fatal error:  Uncaught Error: Failed opening required '/home/code/vscode/test/toybox/vendor/autoload.php' (include_path='.:/usr/share/php') in /home/code/vscode/test/toybox/artisan:18
Stack trace:
#0 {main}
  thrown in /home/code/vscode/test/toybox/artisan on line 18
PHP Warning:  require(/home/code/vscode/test/toybox/vendor/autoload.php): Failed to open stream: No such file or directory in /home/code/vscode/test/toybox/artisan on line 18
PHP Fatal error:  Uncaught Error: Failed opening required '/home/code/vscode/test/toybox/vendor/autoload.php' (include_path='.:/usr/share/php') in /home/code/vscode/test/toybox/artisan:18
Stack trace:
#0 {main}
  thrown in /home/code/vscode/test/toybox/artisan on line 18
PHP Warning:  require(/home/code/vscode/test/toybox/vendor/autoload.php): Failed to open stream: No such file or directory in /home/code/vscode/test/toybox/artisan on line 18
PHP Fatal error:  Uncaught Error: Failed opening required '/home/code/vscode/test/toybox/vendor/autoload.php' (include_path='.:/usr/share/php') in /home/code/vscode/test/toybox/artisan:18
Stack trace:
#0 {main}
  thrown in /home/code/vscode/test/toybox/artisan on line 18
Done! See above for any potential errors.

PHP and Composer Version:

Copyright (c) The PHP Group
Zend Engine v4.2.4, Copyright (c) Zend Technologies
    with Zend OPcache v8.2.4, Copyright (c), by Zend Technologies
code@Mailcow:~/vscode/test/toybox$ composer --version
Composer version 2.5.4 2023-02-15 13:10:06

Ubuntu Version:

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04 LTS
Release:        22.04
Codename:       jammy

I think this might be User Error, but I am stuck rn.

Laravel Pulse

Pulse pretty much supercedes both Telescope the Laravel Health page on the Filament panel of Toybox. I can likely replace Telescope & a good chunk of the healthchecks (if not all) with Pulse..

Re-simplify stack options

Part of the original Toybox vision was to have a very small (i.e. easily repeatable) footprint for deployment. Initially this meant sticking with file drivers and SQLite, but at some point I decided to stick with the "common" use case and stuck MySQL and Redis back in. Not a bad thing, but IMO it dilutes the point of the project and doesn't differentiate it.

Also using Jetstream is a little bit overkill at times, adding instructions on using teams adds overhead, etc. etc.

So I think it's time to go back to a "Toybox works in one way" mentality here, and only highlight which deviations are possible without having to support them too.

FrankenPHP

With the v1 release of FrankenPHP, it's looking pretty impressive.

The static build feature effectively allows you to deploy a binary of PHP (& extensions) + the web app + Caddy. Doing this instead of managing dependencies (or Docker) on the server aligns well with the Toybox project's goals of simplicity.

One caveat is that Octane support is still WIP.

I'm going to be investigating how to use this for Toybox and re-orient the scripts around it.

Refocusing

Been working a lot on Toybox lately, including a lot of features intended to replace commonly used SaaS.

It's not been difficult work, but the roadmap has very quickly bloated in size to something I think is frankly unmanageable.

It's also deviating from a lot of foundational aspects I wanted for the project - basically staying "tiny but mighty".

Then there's also an ever-changing landscape for things like SEO, that I just cannot keep up with right now. Seeing lots of reports for example that Google has kind of killed niche blogging in the common sense.

For many projects I can also foresee having to cut these out or disable them anyway.

Lastly, I don't want to get stuck in a loop of refining Toybox at the expense of actually building projects with it.

I'm going to be removing a lot of features, but they'll stay visible on a feature freeze branch for having an easy code reference point.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.