Κάντα

Φιλικός προς τον χρήστη διαχειριστής μεταφράσεων για projects Elixir/Phoenix. Απλοποιήστε τη διαδικασία διαχείρισης μεταφράσεων παρέχοντας ένα διαισθητικό interface για προσθήκη, επεξεργασία και διαγραφή μεταφράσεων με ζωντανή ενσωμάτωση UI.

Διαχείριση μετάφρασης για Elixir/Phoenix
PO Writer plugin for Kanta. Generate PO files from Kanta translations.
Συγχρονίστε μεταφράσεις μεταξύ περιβαλλόντων ανάπτυξης, δοκιμών και παραγωγής.
DeepL translation integration for Kanta.

Σημείωμα

Γρήγορη αναφορά για εγκατάσταση, διαμόρφωση και χρήση της Κάντα.

Προσθήκη στο mix.exs
Εγκατάσταση

def deps do
  [
    {:kanta, "~> 0.4.2"},
    {:gettext, git: "git@github.com:ravensiris/gettext.git", branch: "runtime-gettext"}
  ]
end
                  
Εκτέλεση εντολής μετάβασης
Εγκατάσταση

mix ecto.gen.migration add_kanta_translations_table
                  
Διαμόρφωση στο config.exs
Διαμόρφωση

# config/config.exs
config :my_app, Kanta,
  endpoint: MyAppWeb.Endpoint, # Your app Endpoint module
  repo: MyApp.Repo, # Your app Repo module
  otp_name: :my_app, # Name of your OTP app
  plugins: []
                  
Ρύθμιση μετάβασης βάσης δεδομένων
Διαμόρφωση

defmodule MyApp.Repo.Migrations.AddKantaTranslationsTable do
  use Ecto.Migration

  def up do
    Kanta.Migration.up(version: 3)
  end

  def down do
    Kanta.Migration.down(version: 3)
  end
end
                  
Διαμόρφωση module Gettext
Διαμόρφωση

defmodule MyAppWeb.Gettext do
  use Gettext, otp_app: :kanta_landing, repo: KantaLandingWeb.GettextRepo
end
                  
Προσθήκη στο δέντρο εποπτείας εφαρμογής
Ρύθμιση

# application.ex
def start(_type, _args) do
  children = [
    ...
    {Kanta, Application.fetch_env!(:my_app, Kanta)}
    ...
  ]
  ...
end
                  
Προσθήκη διαδρομών για το UI της Kanta
Ρύθμιση

# router.ex
import KantaWeb.Router

scope "/" do
  pipe_through :browser

  kanta_dashboard("/kanta")
end
                  
Ενσωμάτωση DeepL
Plugin

# Add to deps in mix.exs
{:kanta_deep_l_plugin, "~> 0.1.1"}

# Configure in config.exs
config :kanta,
  plugins: [
    {Kanta.DeepL.Plugin, api_key: "YOUR_DEEPL_API_KEY"}
  ]
                  
Plugin PO Writer
Plugin

# Add to deps in mix.exs
{:kanta_po_writer_plugin, git: "https://github.com/curiosum-dev/kanta_po_writer_plugin"}

# Configure in config.exs
config :kanta,
  plugins: [
    Kanta.POWriter.Plugin
  ]
                  
KantaSync plugin - Dependencies & Migration
Plugin

# Add to deps in mix.exs
{:kanta_sync_plugin, "~> 0.1.0"}

# Create migration file
defmodule MyApp.Repo.Migrations.AddKantaSyncTables do
  use Ecto.Migration

  def up do
    Kanta.Sync.Migration.up(version: 1)
  end

  def down do
    Kanta.Sync.Migration.down(version: 1)
  end
end
                  
KantaSync plugin - Configuration & Environment
Plugin

# Add API routes in router.ex
scope "/" do
  kanta_api("/kanta-api")
end

# Environment variables (required)
KANTA_API_ENDPOINT="https://production-app.com/kanta-api"
KANTA_SECRET_TOKEN="$(mix phx.gen.secret 256)"

# Optional: Disable default authorization
config :kanta,
  disable_api_authorization: true
                  

Χαρακτηριστικά

  • Εξαγωγή από αρχεία PO

    Αναλύει αυτόματα τα αρχεία .po και τα μετατρέπει σε μορφή βάσης δεδομένων για εύκολη χρήση.

  • Αποθήκευση βάσης δεδομένων

    Τα μηνύματα και οι μεταφράσεις αποθηκεύονται σε πίνακες βάσης δεδομένων για εύκολη προβολή και τροποποίηση.

  • Πρόοδος μετάφρασης

    Παρακολουθήστε την πρόοδο μετάφρασης σε όλες τις γλώσσες με οπτικό dashboard και επιλογές φιλτραρίσματος.

  • Φιλικό προς τον χρήστη UI

    Διαισθητικό web interface για προσθήκη, επεξεργασία και διαγραφή μεταφράσεων με ζωντανές ενημερώσεις.

  • Ενσωμάτωση DeepL

    Υποστήριξη μηχανικής μετάφρασης με DeepL API για γρήγορη βοήθεια μετάφρασης.

  • Συγχρονισμός περιβάλλοντος

    Συγχρονίστε μεταφράσεις μεταξύ περιβαλλόντων ανάπτυξης, δοκιμών και παραγωγής.

Η ανάπτυξη της Κάντα εξαρτάται από εσείς.

Σας προσκαλούμε να συζητήσετε, να συνεισφέρετε και να μοιραστείτε την Κάντα με άλλους.

Υποστηρίξτε την Κάντα

Κανάλι Slack

Εγγραφείτε στο #kanta για να κάνετε ερωτήσεις και να μοιραστείτε ανατροφοδότηση.

Συζητήσεις GitHub

Ανοιχτές συζητήσεις για χαρακτηριστικά και χρήση.

Θέματα GitHub

Αναφέρετε σφάλματα και ζητήστε χαρακτηριστικά.

Οδηγός συνεισφοράς

Πώς να ρυθμίσετε, να κωδικοποιήσετε και να υποβάλετε συνεισφορές.

Εγγραφείτε στον Discord server μας

Περάστε χρόνο με την κοινότητα Curiosum.

Διαδώστε την είδηση

Μοιραστείτε την Κάντα με το δίκτυό σας.