Giter Club home page Giter Club logo

aimeos-docs's Introduction

Aimeos Documentation

Everyone is invited to improve the documentation! :-)

How to contribute

Just fork the repository, edit and add files, commit your changes and create a pull request:

Fork Aimeos docs

Local setup (optional)

Read on, if you want to know, how to edit the documentation locally using Git and preview your changes on your local machine.

Setting up a git workflow

  • Create a free github account, if you do not already have one

  • Go to https://github.com/aimeos/aimeos-docs and fork the repo (click on the "Fork" button on the top right, see image above)

  • In your terminal, clone the forked repo to a destination of your choice with:

    > git clone https://github.com/[YOUR-GITHUB-ACCOUNT]/aimeos-docs.git

    This creates a folder called aimeos-docs.

  • Change into your newly created local aimeos-docs folder and add upstream links to be able to always keep your local clone up-to-date:

    > cd aimeos-doc
    > git remote add upstream git://github.com/aimeos/aimeos-docs.git

    You can verify your git configuration using git remote -v:

    > git remote -v
    
    origin https://github.com/<YOUR_GITHUB_REPO>/aimeos-docs.git (fetch)
    origin https://github.com/<YOUR_GITHUB_REPO>/aimeos-docs.git (push)
    upstream git://github.com/aimeos/aimeos-docs.git (fetch)
    upstream git://github.com/aimeos/aimeos-docs.git (push)

    Keep your local clone and your fork up-to-date with:

    > git fetch upstream
    > git merge upstream/master master
    > git push

    Optional:

    > git rebase upstream/master
  • For each change you would like to commit, create and checkout a new branch, e.g.:

    > git checkout -b <name-of-your-current-commit-branch>
  • Edit the mardown files you wish to contribute to, add a comment and push them to your fork:

    > git add <the-file-you-just-edited>.md
    > git commit -m '<describe briefly, what you changed>'
    > git push -u origin <name-of-your-current-commit-branch>
  • Go to your aimeos-docs fork in your github account and create a pull request.

  • Once your are finished with your commit, don't forget to switch back to the master branch in your local clone:

    > git checkout master
  • Once your commit is merged, you can delete your local and remote branches again with:

    > git branch --delete <branch_name>
    > git push origin --delete <branch_name>

    Then update your local clone and your github fork again with:

    > git fetch upstream
    > git merge upstream/master master
    > git push

Build and live reload your local clone (optional)

Contributing to aimeos-docs does not require anything else but editing the markdown files. However, if you would like to run a local version of the generated docs, you need Python 3. This enables the local generation of the complete aimeos-docs as well as running a local development server that reloads automatically as soon as changes to the repository files are detected.

Install Python 3

Please refer to sources on the internet for explanations on how to install Python 3 on your operating system. One such resource would be Real Python: Installing Python.

Install mkdocs and required dependencies

aimeos-docs uses mkdocs to create static html files from markdown files. Install mkdocs and the dependencies required by aimeos-docs with pip:

pip install mkdocs mkdocs-material
pip install plugins/

Start the local server

Run mkdocs serve to start a local server on http://127.0.0.1:8000. Now, whenever you make changes to any file, the server will automatically reload and display your edited version.

Build the docs

To build the aimeos-docs locally, use mkdocs build. You can now open the documentation in your browser from the newly generated <your-aimeos-docs-clone-folder>/docs´s index.html.

Troubleshooting

Due to some configuration limits, mkdocs serve will tell you that it couldn't find versions.js. Also, mkdocs serve as well as mkdocs build might warn about an unknown analytics configuration attribute. You can safely ignore these warnings.

aimeos-docs's People

Stargazers

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

Watchers

 avatar  avatar  avatar

aimeos-docs's Issues

Todo: Docu Improvements

A reminder to myself: As discussed per Skype on Nov 12, 2020, and later

Available Products:

  • disambiguate "rebate product" vs "discount product" in fixedRebate voucher section;
  • clarify that a "rebate product" is only there to have a way to add images and texts to specific voucher types. Other fields, like price, are ignored! Do not add them to a category!
  • "Preset" Coupons - better description, add szenario

Global:

  • remove all mentions of "... available since...".

various:

Configuration variablesnot in docu:

Voucher:

  • Provide more explanation for each field. Leave "Reference" field empty.

Aimeos-voucher-reference-field

Laravel Cronjobs

Would you consider an update to the documentation for managing cronjobs for Laravel installs?

This is based on my existing setup and the advice from the Laravel documentation.

Laravel's command scheduler allows you to fluently define your command schedule within your Laravel application itself and not within the cron entry itself.

I setup a single cronjob on the server that hits the scheduler every minute.

* * * * * php /path/to/artisan schedule:run >> /dev/null 2>&1

In its most very basic form I will implement the schedule method on App\Console\Kernel, and schedule the commands to execute and and how often to repeat.

For eg.

The following command has a list of jobs that needs to be executed "every minute".

* * * * * php /path/to/artisan aimeos:jobs "order/export/csv order/email/delivery order/email/payment order/email/voucher order/service/delivery subscription/export/csv customer/email/account"

We can replace this with the schedule command which can be committed and managed through the repository.

protected function schedule(Schedule $schedule) 
{
    $schedule->command($this->buildCommand('aimeos:jobs', [
        'order/export/csv',
        'order/email/delivery',
        ...
        'customer/email/account'
    ]))->everyMinute();
}

Similarly, those jobs that need to run every hour...

protected function schedule(Schedule $schedule) 
{
    $schedule->command($this->buildCommand('aimeos:jobs', [
        'customer/email/watch',
        ...
        'order/service/payment',
    ]))->hourly();
} 

There may be a reason why you haven't taken this approach that im unaware off, only I did notice that the TYPO3 is managed differently to Symphony and Laravel setups so its not necessarily for consistency across the supported platforms.

If you are happy with the suggestion I can fork the repo and create a pull request with my amendments?

JSAdm: Docs for adding products to categories

First I want to thank you guys for the great project.

Couldn't find a documentation for the purpose and as a newbie here it took me quite some time to find the correct way of doing this:

curl -b cookies.txt -c cookies.txt \
-X PATCH 'http://localhost:8000/default/jsonadm/product/11?_token=...' \
-H 'Content-Type: application/json' \
-d '{"data": {
    "type": "product",
    "relationships": {
        "catalog": {
            "data": [{
                "id": "48",
                "type": "catalog"
            }]
        }
    }
}}'

It adds product 11 to category 48. Not sure but I think it can go under manage resources

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.