First of a series of articles laying down the bases for classical first order model theory. These articles introduce a framework for treating arbitrary languages with equality. This framework is kept as generic and modular as possible: both the language and the derivation rule are introduced as a type, rather than a fixed functor; definitions and results regarding syntax, semantics, interpretations and sequent derivation rules, respectively, are confined to separate articles, to mark out the hierarchy of dependences among different definitions and constructions. As an application limited to countable languages, satisfiability theorem and a full version of the Gödel completeness theorem are delivered, with respect to a fixed, remarkably t...