A Laravel-based publishing platform

Overview

wink logo

Wink adds a nice UI where you can manage a publication of any size with posts, pages, tags, and authors.

You can add photos, code blocks, featured images, social media & SEO attributes, embedded HTML (YouTube Videos, Embedded Podcasts Episodes, Tweets, ...), and markdown!

Wink is used to manage the official Laravel blog, divinglaravel.com, and many more.

Dark & Light modes available so everyone is happy 😁

Installation

Wink uses a separate database connection and authentication system so that you don't have to modify any of your project code.

To install Wink, run these commands in the root of your Laravel app:

composer require themsaid/wink
php artisan wink:install
php artisan storage:link

Configure the database connection wink is going to be using in config/wink.php. Then run:

php artisan wink:migrate

Head to yourproject.test/wink and use the provided email and password to log in.

Uploading to S3

If you want to upload images to S3, update the storage_disk attribute in your wink.php configuration file to s3. Make sure your S3 disk is correctly configured in your filesystems.php configuration file.

's3' => [
    'driver' => 's3',
    'key' => env('AWS_ACCESS_KEY_ID'),
    'secret' => env('AWS_SECRET_ACCESS_KEY'),
    'region' => env('AWS_DEFAULT_REGION'),
    'bucket' => env('AWS_BUCKET'),
    'url' => env('CDN_URL'),
    'options' => [
        'CacheControl' => 'public, max-age=315360000'
    ],
],

Note: you're going to need to install the AWS-S3 Flysystem adapter, using composer require league/flysystem-aws-s3-v3 for this to work.

Using Unsplash

Visit https://unsplash.com/oauth/applications to create a new unsplash app. Grab the 'Access Key' and add it to your .env file as UNSPLASH_ACCESS_KEY. Lastly, add unsplash to your config/services.php file:

'unsplash' => [
    'key' => env('UNSPLASH_ACCESS_KEY'),
],

Updates

After each update, make sure you run these commands:

php artisan wink:migrate
php artisan vendor:publish --tag=wink-assets --force

Displaying your content

Wink is faceless, it doesn't have any opinions on how you display your content in your frontend. You can use the wink models in your controllers to display the different resources:

  • Wink\WinkPost
  • Wink\WinkPage
  • Wink\WinkAuthor
  • Wink\WinkTag

To display posts and pages content, use $post->content instead of $post->body. The content will always be in HTML format while the body might be HTML or raw markdown based on the post type.

Credits

Special thanks to Caneco for the logo

Contributing

Check the contribution guide.

License

Wink is open-sourced software licensed under the MIT license.

Comments
  • Slug out of title

    Slug out of title

    Would be a good idea to build the slug out of the title. Maybe with str_slug. Especially from an SEO standpoint its nice to have some speakable url and not something like example.com/draft-0bb06fa8-5165-4672-bbfc-030c15008b75.

    idea 
    opened by ben182 22
  • WordPress Importer

    WordPress Importer

    It would be great if we can have a tool to import Authors/Tags/Pages/Posts from WordPress. Don't have clear goal for this yet but hoping you guys can help :)

    opened by themsaid 15
  • Customize Twitter/Facebook cards and SEO meta data.

    Customize Twitter/Facebook cards and SEO meta data.

    This PR adds the ability to customise the meta description for a post, as well as the meta data used to format twitter/facebook cards when sharing on either network. It allows for an author to target users of a particular social network with an optimal title/description/image, providing backend support for an Open Graph and Twitter card implementation on the front end.

    UI changes

    Social meta edit modal

    I've added settings to allow overriding of:

    • meta description
    • twitter title, description and image
    • facebook (opengraph) title, description and image

    Adding these directly to the existing settings modal makes it very long and unwieldy, so instead I added a tabset to the settings dialog. This allows a grouped separation between the existing settings, and these new seo/social ones. I took this approach rather than adding a new settings modal, as my thinking is that these options belong close to the slug/excerpt editing. Within the social tab, the Facebook and Twitter fields are contained within an accordion, again with the idea of preventing the user from getting bombarded with too many inputs at once on initial load!

    The logic for both the twitter and facebook field editing is pretty much identical, so a new SocialMeta vue component has been added to prevent duplication within the main edit.vue file.

    One thing to note here is that label shown to users on the Facebook accordion panel is "Facebook", but the input fields are named opengraph_*. The thinking here is that users will be looking for the Facebook fields to edit, but from a dev perspective, meta field names need to be outputted as opengraph_* on the frontend, not facebook_*, so under the hood the field names are kept consistent. This is a similar approach to the one taken by Yoast on the Wordpress SEO plugin.

    Backend changes

    As part of this PR, a WinkMeta model has been added. This is similar to wordpress' postmeta, allowing us to store key, value and link to a post. The main benefit of this is that it makes it a lot easier to add new meta fields in future, without having to make schema changes. The downside of this is that by default, the api response that comes back when with('meta') is added comes back something like:

    meta: [
        [id: 1, key: 'opengraph_title', value: 'My FB title', created_at....],
        [id: 2, key: 'opengraph_description', value: 'My FB description', created_at....],
        ....
    ]
    

    This isn't the easiest structure to work with on the front end. There we'll usually want to know things like "is opengraph_title set on this post?", and having to iterate over a collection each time when looking to get/set isn't ideal. To get around this, json resources are added for both the post and post meta models, with collections for each also present. The resource formatting doesn't do anything special with the post, other than to wrap up the attached meta fields, so the existing structure of the post response shouldn't change outside the addition of a meta field. This allows a meta response like the above to be converted into something hopefully a bit more developer-friendly, like the below:

    Api fields

    One other thing that may look a bit funny here is the way that opengraph_image_width and opengraph_image_height are calculated whenever opengraph_image is updated. The goal here is to avoid a known issue with the facebook share crawler whereby the first user to share a piece of content often doesn't see the image in their preview. Explicitly specifying the height and width is the recommended solution for this (see https://developers.facebook.com/docs/sharing/best-practices#precaching). Rather than ask users for these values, they can be extracted from the image on upload, keeping them in the db for whenever they're needed for frontend rendering.

    opened by conroyp 11
  • Forced Redirect to Login view

    Forced Redirect to Login view

    BlogController.php in app/Http/Controllers

    ` <?php

    namespace App\Http\Controllers;

    use Illuminate\Http\Request;

    class BlogController extends Controller { // public function index() { $posts = WinkPost::with('tags') ->where('published', true) ->where('publish_date', '<=', now()->toDateTimeString()) ->orderBy('publish_date', 'DESC') ->simplePaginate(12);

        return view('blog.index', [
            'posts' => $posts
        ]);
    }
    

    } `

    Routes in app/routes/web.php Route::get('/blog', 'BlogController@index')->name('blog.index');

    however, url.com/blog (which I'm making for my homepage) stills redirects instantly to url.com/blog/login ... am I missing a step?

    opened by justinexoplanet 11
  • wink:migrate command is not working

    wink:migrate command is not working

    Hi, first I really love your package, thanks for your work, I try five times to install wink with a fresh Laravel installations, I follow the readme.md, all the times it returns me the same error:

    Base table or view not found: 1146 Table 'project.wink_authors' doesn't exist
    

    My wink db connection is on ".env" file:

    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=project
    DB_USERNAME=root
    DB_PASSWORD=
    WINK_DB_CONNECTION=mysql
    

    I work previously with this package, so I try adding in "config/database.php" another db connection as wink, by coping the "mysql" driver and rename it as "wink", but this does not work either.

    I suppose that the command:

    php artisan wink:install
    

    publish assets, but not a migrations, maybe there is a key, thanks for all your work for the community.

    opened by ArielMejiaDev 10
  • php artisan wink:migrate does nothing

    php artisan wink:migrate does nothing

    As per instructions, running php artisan wink:migrate should give me default login credentials. However this is what happens for me:

    21:14:55  javorszky@GaborrMBP  ~/Sites/wink  ⬡ v10.6.0  12s 
    $ composer require writingink/wink
    Using version ^0.0.1 for writingink/wink
    ./composer.json has been updated
    Loading composer repositories with package information
    Updating dependencies (including require-dev)
    Package operations: 1 install, 0 updates, 0 removals
      - Installing writingink/wink (v0.0.1): Loading from cache
    Writing lock file
    Generating optimized autoload files
    > Illuminate\Foundation\ComposerScripts::postAutoloadDump
    > @php artisan package:discover --ansi
    Discovered Package: beyondcode/laravel-dump-server
    Discovered Package: fideloper/proxy
    Discovered Package: laravel/tinker
    Discovered Package: nesbot/carbon
    Discovered Package: nunomaduro/collision
    Discovered Package: writingink/wink
    Package manifest generated successfully.
    
     21:15:25  javorszky@GaborrMBP  ~/Sites/wink  ⬡ v10.6.0  14s 
    $ php artisan wink:install
    Publishing Wink Assets...
    Publishing Wink Configuration...
    Wink was installed successfully.
    
     21:15:35  javorszky@GaborrMBP  ~/Sites/wink  ⬡ v10.6.0 
    $ php artisan wink:migrate
    Nothing to migrate.
    

    To further complicate things, I haven't set up a different database connection for wink, but decided to reuse the one laravel uses (because why not...)

    opened by javorszky 10
  • Enable Resource data Wrapping, turned of by global withoutWrapping

    Enable Resource data Wrapping, turned of by global withoutWrapping

    Just installed wink to our project as a test. When I create a post and want to publish it, I get the following message: bildschirmfoto 2019-01-17 um 12 10 48

    Seems like the author_id is not set in the save for me. Any ideas? Currently setting up a new project for testing, to check if my project interferes with wink.

    I got the Post Published info box, but no post is saved to my database.

    UPDATE In our AppServiceProvider we had Resource::withoutWrapping(); set. That influenced the Wink Resources also.

    need more info 
    opened by krizzdev 9
  • [Suggestion] Post Categories

    [Suggestion] Post Categories

    I thought this would be a nice progression for this project, I'm typically finding that I want a category for a blog post and not just a list of tags

    I understand that tags can be used in it's place

    opened by RichToms 9
  • [WIP] [Road Map] Create an initial theme that people can use right away.

    [WIP] [Road Map] Create an initial theme that people can use right away.

    I started to work on this feature as mentioned here https://github.com/writingink/wink/issues/30

    Routes

    I've created a macro for loading Wink's Default Theme routes. This way, the final user can place this routes whenever he likes to prevent overriding their own.

    Configuration

    I've created an array inside config/wink.php to manage those configurations that cannot be edited through the backend, such as twitter username, site description or google analytics & verification.

    Pending

    The rest of the code is pretty simple to follow. I left a few TODO behind:

    • About the estimated reading time of an article, we can remove that from the HTML or calculate as @themsaid currently does. I think it's an interesting feature 🙂
    • Posts pagination is still work in progress
    • Generate our own styles instead of pulling from https://themsaid.com

    I also plan to add a few simple tests about this feature once we have something like https://github.com/writingink/wink/pull/5

    opened by Lloople 9
  • Add integration with Laravel default auth system and User model

    Add integration with Laravel default auth system and User model

    Hey there! An awesome package, you've got here.

    This PR has the main goal of integrating Wink with the base Laravel auth system and use the default User model.

    In order to do that, I started by refactoring the migration, which I turned into a Stub that's published when the php artisan wink:install command is run and removed the Wink specific database connection config variable and any reference of it throughout the Wink controllers.

    Also, as consequence, I removed almost any controller related to authentication and registration, in favour of using the default ones that Laravel provides with the command php artisan make:auth. I did keep, however, the frontend assets and I'll leave the refactor of those for another PR, for now.

    I did remove the WinkAuthor model and extracted the necessary relations methods to an IsAuthor trait. This trait needs to be included on a Model that represents the Users, on a given system. I did, however, add two config vars that let developers decide which model to use (defaulting to the User model Laravel supplies) and the corresponding table name on the database (defaulting, too, to the Laravel's users table).

    The rest of the work declared was about updating DockBlocks return statements and updating logic comparison operators to be more strict.

    Hope this helps about #13 and many other questions that I've seen throughout Twitter.

    opened by josepostiga 9
  • Image uploading failing (intermittently) with 500 error prior to hitting ImageUploadsController?

    Image uploading failing (intermittently) with 500 error prior to hitting ImageUploadsController?

    On the image uploader, upload only succeeds on "Crop Image", not on "Use Original".
    Also, .png works, .jpg doesn't at all (of the two test images I'm using).

    So, I've got images uploading successfully, but not reliably.

    I added a Log::info in the ImageUploadsController, which reveals on case of upload fails browser console reports 500 internal server error prior to ImageUploadsController being hit at all. Wondering what could that be...

    Would love to get this working & get comfortable with the source. It's very elegantly written - the laravel parts which I've read. :)

    opened by mikew1 7
  • Bump express from 4.16.4 to 4.18.2

    Bump express from 4.16.4 to 4.18.2

    Bumps express from 4.16.4 to 4.18.2.

    Release notes

    Sourced from express's releases.

    4.18.2

    4.18.1

    • Fix hanging on large stack of sync routes

    4.18.0

    ... (truncated)

    Changelog

    Sourced from express's changelog.

    4.18.2 / 2022-10-08

    4.18.1 / 2022-04-29

    • Fix hanging on large stack of sync routes

    4.18.0 / 2022-04-25

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 0
  • Bump qs and express

    Bump qs and express

    Bumps qs and express. These dependencies needed to be updated together. Updates qs from 6.5.2 to 6.11.0

    Changelog

    Sourced from qs's changelog.

    6.11.0

    • [New] [Fix] stringify: revert 0e903c0; add commaRoundTrip option (#442)
    • [readme] fix version badge

    6.10.5

    • [Fix] stringify: with arrayFormat: comma, properly include an explicit [] on a single-item array (#434)

    6.10.4

    • [Fix] stringify: with arrayFormat: comma, include an explicit [] on a single-item array (#441)
    • [meta] use npmignore to autogenerate an npmignore file
    • [Dev Deps] update eslint, @ljharb/eslint-config, aud, has-symbol, object-inspect, tape

    6.10.3

    • [Fix] parse: ignore __proto__ keys (#428)
    • [Robustness] stringify: avoid relying on a global undefined (#427)
    • [actions] reuse common workflows
    • [Dev Deps] update eslint, @ljharb/eslint-config, object-inspect, tape

    6.10.2

    • [Fix] stringify: actually fix cyclic references (#426)
    • [Fix] stringify: avoid encoding arrayformat comma when encodeValuesOnly = true (#424)
    • [readme] remove travis badge; add github actions/codecov badges; update URLs
    • [Docs] add note and links for coercing primitive values (#408)
    • [actions] update codecov uploader
    • [actions] update workflows
    • [Tests] clean up stringify tests slightly
    • [Dev Deps] update eslint, @ljharb/eslint-config, aud, object-inspect, safe-publish-latest, tape

    6.10.1

    • [Fix] stringify: avoid exception on repeated object values (#402)

    6.10.0

    • [New] stringify: throw on cycles, instead of an infinite loop (#395, #394, #393)
    • [New] parse: add allowSparse option for collapsing arrays with missing indices (#312)
    • [meta] fix README.md (#399)
    • [meta] only run npm run dist in publish, not install
    • [Dev Deps] update eslint, @ljharb/eslint-config, aud, has-symbols, tape
    • [Tests] fix tests on node v0.6
    • [Tests] use ljharb/actions/node/install instead of ljharb/actions/node/run
    • [Tests] Revert "[meta] ignore eclint transitive audit warning"

    6.9.7

    • [Fix] parse: ignore __proto__ keys (#428)
    • [Fix] stringify: avoid encoding arrayformat comma when encodeValuesOnly = true (#424)
    • [Robustness] stringify: avoid relying on a global undefined (#427)
    • [readme] remove travis badge; add github actions/codecov badges; update URLs
    • [Docs] add note and links for coercing primitive values (#408)
    • [Tests] clean up stringify tests slightly
    • [meta] fix README.md (#399)
    • Revert "[meta] ignore eclint transitive audit warning"

    ... (truncated)

    Commits
    • 56763c1 v6.11.0
    • ddd3e29 [readme] fix version badge
    • c313472 [New] [Fix] stringify: revert 0e903c0; add commaRoundTrip option
    • 95bc018 v6.10.5
    • 0e903c0 [Fix] stringify: with arrayFormat: comma, properly include an explicit `[...
    • ba9703c v6.10.4
    • 4e44019 [Fix] stringify: with arrayFormat: comma, include an explicit [] on a s...
    • 113b990 [Dev Deps] update object-inspect
    • c77f38f [Dev Deps] update eslint, @ljharb/eslint-config, aud, has-symbol, tape
    • 2cf45b2 [meta] use npmignore to autogenerate an npmignore file
    • Additional commits viewable in compare view

    Updates express from 4.17.1 to 4.18.2

    Release notes

    Sourced from express's releases.

    4.18.2

    4.18.1

    • Fix hanging on large stack of sync routes

    4.18.0

    ... (truncated)

    Changelog

    Sourced from express's changelog.

    4.18.2 / 2022-10-08

    4.18.1 / 2022-04-29

    • Fix hanging on large stack of sync routes

    4.18.0 / 2022-04-25

    ... (truncated)

    Commits

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 0
  • Bump decode-uri-component from 0.2.0 to 0.2.2

    Bump decode-uri-component from 0.2.0 to 0.2.2

    Bumps decode-uri-component from 0.2.0 to 0.2.2.

    Release notes

    Sourced from decode-uri-component's releases.

    v0.2.2

    • Prevent overwriting previously decoded tokens 980e0bf

    https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.1...v0.2.2

    v0.2.1

    • Switch to GitHub workflows 76abc93
    • Fix issue where decode throws - fixes #6 746ca5d
    • Update license (#1) 486d7e2
    • Tidelift tasks a650457
    • Meta tweaks 66e1c28

    https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.1

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 0
  • Bump loader-utils and webpack-cli

    Bump loader-utils and webpack-cli

    Bumps loader-utils, loader-utils and webpack-cli. These dependencies needed to be updated together. Updates loader-utils from 1.4.0 to 1.4.2

    Release notes

    Sourced from loader-utils's releases.

    v1.4.2

    1.4.2 (2022-11-11)

    Bug Fixes

    v1.4.1

    1.4.1 (2022-11-07)

    Bug Fixes

    Changelog

    Sourced from loader-utils's changelog.

    1.4.2 (2022-11-11)

    Bug Fixes

    1.4.1 (2022-11-07)

    Bug Fixes

    Commits

    Updates loader-utils from 1.2.3 to 1.4.2

    Release notes

    Sourced from loader-utils's releases.

    v1.4.2

    1.4.2 (2022-11-11)

    Bug Fixes

    v1.4.1

    1.4.1 (2022-11-07)

    Bug Fixes

    Changelog

    Sourced from loader-utils's changelog.

    1.4.2 (2022-11-11)

    Bug Fixes

    1.4.1 (2022-11-07)

    Bug Fixes

    Commits

    Updates webpack-cli from 3.3.11 to 3.3.12

    Changelog

    Sourced from webpack-cli's changelog.

    3.3.12 (2020-06-03)

    Full Changelog

    Commits
    Maintainer changes

    This version was pushed to npm by evilebottnawi, a new releaser for webpack-cli since your current version.


    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 0
  • Bump css-what from 2.1.2 to 2.1.3

    Bump css-what from 2.1.2 to 2.1.3

    Bumps css-what from 2.1.2 to 2.1.3.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 0
Releases(v1.3.2)
Owner
Mohamed Said
Web developer at Laravel
Mohamed Said
Self-hosted CMS platform based on the Laravel PHP Framework.

October is a Content Management System (CMS) and web platform whose sole purpose is to make your development workflow simple again. It was born out of

October CMS 10.8k Jan 1, 2023
Library extra fields for Laravel Orchid Platform

Orchid Fields Extra library which add different fields in Laravel Orchid Platform Installation You may install into your project using the Composer pa

Ilya 12 Nov 9, 2022
Asset Component is a port of Laravel 3 Asset for Orchestra Platform.

Asset Component is a port of Laravel 3 Asset for Orchestra Platform. The component main functionality is to allow asset declaration to be handle dynamically and asset dependencies can be resolve directly from the container. It however is not intended to becoma an asset pipeline package for Laravel, for such purpose we would recommend to use Grunt or Gulp.

Orchestra Platform 54 Mar 31, 2022
Postier is a Laravel API automation platform to transfer data and to sync apps.

Postier is a Laravel API automation platform to transfer data and to sync apps. You can build workflows with data and actions of multiple apps and apply logics to the data!

null 55 Oct 28, 2022
A platform to create documentation/wiki content built with PHP & Laravel

BookStack A platform for storing and organising information and documentation. Details for BookStack can be found on the official website at https://w

BookStackApp 10.7k Jan 5, 2023
This is a simple caricatur media platform using laravel 7.2.0

Laravel Caricatur Platform This is a simple caricatur media platform using laravel 7.2.0 Screenshot Getting started Launch the project (Assuming you'v

Abdurrahman Gazi DİŞ 0 Nov 16, 2022
Madison is a platform for lawmakers to share legislation with their citizens, allowing the community to add comments and suggest improvements.

Madison Madison is an open-source document engagement and feedback platform. While Madison can be used to collaborate on many different kinds of docum

OpenGov Foundation 591 Dec 17, 2022
Hashtopolis is a multi-platform client-server tool for distributing hashcat tasks to multiple computers.

Hashtopolis is a multi-platform client-server tool for distributing hashcat tasks to multiple computers. The main goals for Hashtopolis's development are portability, robustness, multi-user support, and multiple groups management.

Hashtopolis 1.1k Jan 4, 2023
Mailing platform with templates and logs included.

MailCarrier User-friendly, API-ready mail platform with templates and logs. Design global layouts, compose your template, preview your emails and send

MailCarrier 18 Dec 14, 2022
laravel - Potion is a pure PHP asset manager for Laravel 5 based off of Assetic.

laravel-potion Potion is a pure PHP asset manager for Laravel based off of Assetic. Description Laravel 5 comes with a great asset manager called Elix

Matthew R. Miller 61 Mar 1, 2022
List of 77 languages for Laravel Framework 4, 5, 6, 7 and 8, Laravel Jetstream , Laravel Fortify, Laravel Breeze, Laravel Cashier, Laravel Nova and Laravel Spark.

Laravel Lang In this repository, you can find the lang files for the Laravel Framework 4/5/6/7/8, Laravel Jetstream , Laravel Fortify, Laravel Cashier

Laravel Lang 6.9k Jan 2, 2023
Awes.io // boilerplate based on Vue, Nuxt, TailwindCSS plus Laravel as a backend. 🤟

Platform for Interactive Business Applications 10x faster to create than the traditional way • 3x increase application experiences • 60% decrease in d

Awes.io 753 Dec 30, 2022
PHP package to help the development of Laravel-based Telegram bots

Laravel-telegram-bot Project description goes here. This description is usually two to three lines long. It should give an overview of what the projec

CC - UFFS 6 May 10, 2021
Laravel blade directives and php helpers for serverside rendered content, based on browser window size WITHOUT css

Laravel Window Size and Breakpoints Laravel blade directives and php helpers for server side rendered content, based on browser window size WITHOUT cs

Tina Hammar 7 Nov 23, 2022
MediaDB is a web-based media streaming service written in Laravel and Vue.

MediaDB (API) MediaDB is a web-based media streaming service written in Laravel and Vue. The nginx-vod-module is used for on-the-fly repackaging of MP

François M. 53 Sep 3, 2022
A simple laravel package to handle multiple key based model route binding

Laravel Model UUID A simple package to handle the multiple key/column based route model binding for laravel package Installation Require the package u

null 13 Mar 2, 2022
Gretel is a Laravel package for adding route-based breadcrumbs to your application.

Gretel Laravel breadcrumbs right out of a fairy tale. Gretel is a Laravel package for adding route-based breadcrumbs to your application. Defining Bre

Galahad 131 Dec 31, 2022
Package to easily test crudable controllers for Laravel based API

Laravel Crudable Test This package is very usefull to easily test crudable controllers. Installation You can install package via composer. Add reposit

null 2 Jul 27, 2022
A Laravel Code Generator based on your Models using Blade Template Engine

Laravel Code Generator is a PHP Laravel Package that uses Blade template engine to generate code for you. The difference between other code generators

Victor Yoalli 59 Dec 5, 2022