
Uma plataforma de comércio eletrônico gratuito e de código aberto que oferece controle completo sobre sua loja.
Como um projeto orientado à comunidade, a Solidus conta com fundos e tempo doados por desenvolvedores e partes interessadas que usam a Solidus para seus negócios. Se você quiser ajudar a Solidus a continuar crescendo, considere:
Atualmente, o Nebulab é o principal colaborador do código e diretor da Solidus, fornecendo orientação técnica e coordenando os esforços e atividades da comunidade.
Apoie este projeto, tornando -se um embaixador do Solidus. Seu logotipo aparecerá aqui com um link para o seu site. Torne -se um embaixador.
Solidus é uma solução completa de comércio eletrônico de código aberto construído com Ruby on Rails. É um garfo de farra.
Consulte a documentação da classe Solidus e os guias Solidus para obter informações sobre a funcionalidade que o Solidus fornece.
Solidus consiste em várias jóias. Quando você precisar da jóia solidus no seu Gemfile , o Bundler instalará todas as seguintes jóias:
solidus_api (API RESTful)solidus_backend (área de administrador)solidus_core (modelos essenciais, mala direta e classes)solidus_sample (dados de amostra) Todas as gemas foram projetadas para trabalhar juntas para fornecer uma plataforma de comércio eletrônico totalmente funcional. No entanto, você pode usar apenas o solidus_core Gem combine -o com seu próprio front -end personalizado, interface de administração e API.
Você pode experimentar a demonstração ao vivo Solidus aqui. A seção de administrador pode ser acessada aqui.
Comece certificando -se de que você tenha o ImageMagick instalado, o que é necessário para o LAPERCLIP. (Você pode instalá -lo usando homebrew se estiver em um Mac.)
Para adicionar Solidus, comece com um aplicativo Rails recém -criado com seu banco de dados.
rails new my_storeNa pasta raiz do seu aplicativo, execute:
bundle add solidus
bin/rails g solidus:installE siga as instruções do prompt.
Inicie o servidor Rails com o comando:
bin/rails sA loja estará acessível em http: // localhost: 3000/e o admin pode ser encontrado em http: // localhost: 3000/admin/.
Para obter informações sobre como personalizar sua loja, consulte os guias de personalização.
Como parte da execução das etapas de instalação acima, você será solicitado a definir uma combinação de email/senha de administrador. Os valores padrão são [email protected] e test123 , respectivamente.
A melhor maneira de fazer perguntas é participar da folga do Solidus e ingressar no canal #Support.
Em vez de uma compilação estável, se você deseja usar a versão de borda sangrando do Solidus, use esta linha:
gem 'solidus' , github : 'solidusio/solidus'Nota: A filial principal não está garantida para estar em um estado totalmente em funcionamento. É muito arriscado usar esse ramo na produção.
Por padrão, o gerador de instalação ( solidus:install ) executará migrações, além de adicionar dados de sementes e amostra. Isso pode ser desativado usando
bin/rails g solidus:install --migrate=false --sample=false --seed=falseVocê sempre pode executar qualquer uma dessas etapas posteriormente usando esses comandos.
bin/rails railties:install:migrations
bin/rails db:migrate
bin/rails db:seed
bin/rails spree_sample:loadTambém existem opções e tarefas de rake fornecidas por solidus_auth_devise.
Você pode notar que sua loja Solidus é lentamente no modo de desenvolvimento. Isso pode ocorrer porque, no desenvolvimento, cada CSS e JavaScript são carregados como uma inclusão separada. Isso pode ser desativado adicionando o seguinte ao config/environments/development.rb .
config . assets . debug = falsePara ganhar alguma velocidade extra, você pode ativar os turbolinks dentro do Solidus Admin.
Adicione gem 'turbolinks', '~> 5.0.0' no seu Gemfile (se ainda não estiver presente) e altere vendor/assets/javascripts/spree/backend/all.js da seguinte forma:
//= require turbolinks
//
// ... current file content
//
//= require spree/backend/turbolinks-integration.jsCUIDADO Por favor, esteja ciente de que os turbolinks podem quebrar extensões e/ou personalizações para o administrador do Solidus. Use por sua conta e risco.
Clone the Git Repo
git clone git://github.com/solidusio/solidus.git
cd solidusInstale as dependências do GEM
bin/setupNOTA : Se você estiver usando o PostgreSQL ou o MySQL, precisará instalar essas gemas através da variável de ambiente DB.
# PostgreSQL
export DB=postgresql
bin/setup
# MySQL
export DB=mysql
bin/setupdocker-compose up -d Aguarde que todas as gems sejam instaladas (o progresso pode ser verificado através do docker-compose logs -f app ).
Você pode fornecer a versão Ruby que deseja que sua imagem use:
docker-compose build --build-arg RUBY_VERSION=3.0 app
docker-compose up -d A versão Rails pode ser personalizada em tempo de execução através da variável do ambiente RAILS_VERSION :
RAILS_VERSION= ' ~> 5.0 ' docker-compose up -dTestes de execução:
# sqlite
docker-compose exec app bin/rspec
# postgres
docker-compose exec app env DB=postgres bin/rspec
# mysql
docker-compose exec app env DB=mysql bin/rspecAcessando os bancos de dados:
# sqlite
docker-compose exec app sqlite3 /path/to/db
# postgres
docker-compose exec app env PGPASSWORD=password psql -U root -h postgres
# mysql
docker-compose exec app mysql -u root -h mysql -ppassword Para poder acessar o aplicativo Sandbox, basta fornecer a opção --binding apropriada ao rails server . Por padrão, a porta 3000 está exposta, mas você pode alterá -lo através da variável de ambiente SANDBOX_PORT :
SANDBOX_PORT=4000 docker-compose up -d
docker-compose exec app bin/sandbox
docker-compose exec app bin/rails server --binding 0.0.0.0 --port 4000Solidus deve ser executado no contexto da aplicação do Rails. Você pode criar facilmente um aplicativo Sandbox dentro do seu diretório de origem clonado para fins de teste.
Este sandbox inclui solidus_auth_devise e gera com dados de sementes e amostra já carregados.
Crie o aplicativo Sandbox
bin/sandboxVocê pode criar uma caixa de areia com o PostgreSQL ou o MySQL, configurando a variável de ambiente do banco de dados.
# PostgreSQL
export DB=postgresql
bin/sandbox
# MySQL
export DB=mysql
bin/sandboxDependendo do seu ambiente local, pode ser necessário definir variáveis de ambiente para o seu RDBMS, a saber:
DB_HOSTDB_USERDB_PASSWORD Se você precisar criar um aplicativo Rails 5.2 para sua caixa de areia, por exemplo, se você ainda estiver usando o Ruby 2.4, que não é suportado pelo Rails 6, poderá usar a variável de ambiente RAILS_VERSION .
export RAILS_VERSION= ' ~> 5.2.0 '
bin/setup
bin/sandboxVocê pode iniciar o servidor Rails e outros serviços da pasta Solidus ou do Sandbox One, executando o comando:
bin/dev Observação: se você executar bin/rails server ou comandos similares, apenas o servidor Rails será iniciado. Isso pode causar o erro couldn't find file 'solidus_admin/tailwind.css' quando você tenta carregar páginas de administração.
Solidus usa o RSPEC para testes. Consulte sua documentação para obter mais informações sobre a biblioteca de testes.
Usamos o CircLeci para executar os testes para o Solidus, bem como todas as solicitações de tração recebidas. Todas as solicitações de tração devem passar para serem mescladas.
Você pode ver os status de construção em https://circleci.com/gh/solidusio/solidus.
O Chromedriver é obrigado a executar as suítes de teste de back -end.
Para executar todas as especificações do teste, execute o script de bin/build na raiz do projeto Solidus:
createuser --superuser --echo postgres # only the first time
bin/build O script bin/build é executado usando o PostGresql por padrão, mas pode ser substituído definindo a variável de ambiente DB como DB=sqlite ou DB=mysql . Por exemplo:
env DB=mysql bin/buildSe o comando falhar com os erros relacionados ao MySQL, você pode tentar criar um usuário com este comando:
# Creates a user with the same name as the current user and no restrictions.
mysql --user= " root " --execute= " CREATE USER ' $USER '@'localhost'; GRANT ALL PRIVILEGES ON * . * TO ' $USER '@'localhost'; " Cada jóia contém sua própria série de testes. Para executar os testes para o projeto principal:
cd core
bundle exec rspec Por padrão, rspec executa os testes para o sqlite 3. Se você deseja executar especificações em outro banco de dados, poderá especificar o banco de dados no comando:
env DB=postgresql bundle exec rspecSe você deseja executar o relatório de cobertura do código SimpleCov:
COVERAGE=true bundle exec rspecAlém da funcionalidade principal fornecida no Solidus, existem várias maneiras de adicionar recursos à sua loja que ainda não fazem (ou ainda não) parte do projeto principal.
Uma lista pode ser encontrada em extensões.solidus.io.
Se você deseja escrever uma extensão para o Solidus, pode usar a gem Solidus_Dev_Support.
Solidus é um projeto de código aberto e incentivamos contribuições. Por favor, leia contribuindo.md antes de contribuir.